Come dividere un dataframe pandas in più dataframe
È possibile utilizzare la seguente sintassi di base per dividere un DataFrame panda in più DataFrame in base al numero di riga:
#split DataFrame into two DataFrames at row 6 df1 = df. iloc [:6] df2 = df. iloc [6:]
Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.
Esempio 1: dividere il DataFrame Pandas in due DataFrame
Il codice seguente mostra come dividere un DataFrame panda in due 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
Tieni presente che df1 contiene le prime sei righe del DataFrame originale e df2 contiene le ultime sei righe del DataFrame originale.
Esempio 2: dividere il DataFrame Pandas in più DataFrame
Il codice seguente mostra come dividere un panda
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
In questo esempio, abbiamo scelto di dividere un DataFrame in tre DataFrame, ma utilizzando questa sintassi possiamo dividere un DataFrame panda in qualsiasi numero di DataFrame desideriamo.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre funzioni comuni nei panda:
Come aggiungere due DataFrames Pandas
Come eliminare le colonne in Pandas DataFrame
Come selezionare singole righe in un Pandas DataFrame