Как разделить dataframe pandas на несколько dataframe
Вы можете использовать следующий базовый синтаксис, чтобы разделить DataFrame pandas на несколько DataFrame на основе номера строки:
#split DataFrame into two DataFrames at row 6 df1 = df. iloc [:6] df2 = df. iloc [6:]
Следующие примеры показывают, как использовать этот синтаксис на практике.
Пример 1. Разделение фрейма данных Pandas на два фрейма данных.
Следующий код показывает, как разделить DataFrame pandas на два DataFrame:
import pandas as pd #createDataFrame 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) xy 0 1 5 1 1 7 2 1 7 3 3 9 4 3 12 5 4 9 print (df2) xy 6 5 9 7 5 4 8 5 3 9 6 3 10 7 1 11 9 10
Обратите внимание, что df1 содержит первые шесть строк исходного DataFrame, а df2 содержит последние шесть строк исходного DataFrame.
Пример 2. Разделение фрейма данных Pandas на несколько фреймов данных
Следующий код показывает, как разделить pandas
import pandas as pd #createDataFrame 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) xy 0 1 5 1 1 7 2 1 7 print (df2) xy 3 3 9 4 3 12 5 4 9 print (df3) xy 6 5 9 7 5 4 8 5 3 9 6 3 10 7 1 11 9 10
В этом примере мы решили разделить DataFrame на три DataFrame, но используя этот синтаксис, мы можем разделить DataFrame pandas на любое количество DataFrame, которое мы хотим.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные функции в pandas:
Как добавить два кадра данных Pandas
Как удалить столбцы в Pandas DataFrame
Как выбрать отдельные строки в DataFrame Pandas