Как разделить фрейм данных Pandas на несколько фреймов данных


Вы можете использовать следующий базовый синтаксис для разделения кадра данных pandas на несколько кадров данных на основе номера строки:

#split DataFrame into two DataFrames at row 6
df1 = df.iloc [:6]
df2 = df.iloc [6:]

В следующих примерах показано, как использовать этот синтаксис на практике.

Пример 1: разделить Pandas DataFrame на два DataFrames

Следующий код показывает, как разделить один кадр данных pandas на два кадра данных:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'x': [1, 1, 1, 3, 3, 4, 5, 5, 5, 6, 7, 9],
 'y': [5, 7, 7, 9, 12, 9, 9, 4, 3, 3, 1, 10]})

#view DataFrame
df

 x y
0 1 5
1 1 7
2 1 7
3 3 9
4 3 12
5 4 9
6 5 9
7 5 4
8 5 3
9 6 3
10 7 1
11 9 10

#split original DataFrame into two DataFrames
df1 = df.iloc [:6]
df2 = df.iloc [6:]

#view resulting DataFrames
print(df1)

 x y
0 1 5
1 1 7
2 1 7
3 3 9
4 3 12
5 4 9

print(df2)
 x y
6 5 9
7 5 4
8 5 3
9 6 3
10 7 1
11 9 10

Обратите внимание, что df1 содержит первые шесть строк исходного DataFrame, а df2 содержит последние шесть строк исходного DataFrame.

Пример 2: Разделение Pandas DataFrame на несколько DataFrames

Следующий код показывает, как разделить pandas

import pandas as pd

#create DataFrame
df = pd.DataFrame({'x': [1, 1, 1, 3, 3, 4, 5, 5, 5, 6, 7, 9],
 'y': [5, 7, 7, 9, 12, 9, 9, 4, 3, 3, 1, 10]})

#split into three DataFrames
df1 = df.iloc [:3]
df2 = df.iloc [3:6]
df3 = df.iloc [6:]

#view resulting DataFrames
print(df1)

 x y
0 1 5
1 1 7
2 1 7

print(df2)

 x y
3 3 9
4 3 12
5 4 9

print(df3)

 x y
6 5 9
7 5 4
8 5 3
9 6 3
10 7 1
11 9 10

В этом примере мы решили разделить один DataFrame на три DataFrames, но, используя этот синтаксис, мы можем разделить DataFrame pandas на любое количество DataFrames, которое нам нужно.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные функции в pandas:

Как добавить два кадра данных Pandas
Как удалить столбцы в Pandas DataFrame
Как выбрать уникальные строки в Pandas DataFrame

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.