Panda's: een dataframe splitsen op kolomwaarde
U kunt de volgende basissyntaxis gebruiken om een Panda’s DataFrame te splitsen op kolomwaarde:
#define value to split on x = 20 #define df1 as DataFrame where 'column_name' is >= 20 df1 = df[df[' column_name '] >= x] #define df2 as DataFrame where 'column_name' is < 20 df2 = df[df[' column_name '] < x]
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: Panda’s DataFrame splitsen op kolomwaarde
Stel dat we de volgende panda’s DataFrame hebben:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [22, 24, 19, 18, 14, 29, 31, 16], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team points rebounds 0 to 22 11 1 B 24 8 2 C 19 10 3 D 18 6 4 E 14 6 5 F 29 5 6 G 31 9 7:16:12
We kunnen de volgende code gebruiken om het DataFrame in twee DataFrames te splitsen, waarbij de eerste de rijen bevat waarin de „punten“ groter dan of gelijk zijn aan 20 en de tweede de rijen bevat waarin de „punten“ kleiner zijn dan 20:
#define value to split on x = 20 #define df1 as DataFrame where 'points' is >= 20 df1 = df[df[' points '] >= x] print (df1) team points rebounds 0 to 22 11 1 B 24 8 5 F 29 5 6 G 31 9 #define df2 as DataFrame where 'points' is < 20 df2 = df[df[' points '] < x] print (df2) team points rebounds 2 C 19 10 3 D 18 6 4 E 14 6 7:16:12
Merk op dat we ook de functie reset_index() kunnen gebruiken om de indexwaarden voor elk resulterend DataFrame opnieuw in te stellen:
#define value to split on x = 20 #define df1 as DataFrame where 'points' is >= 20 df1 = df[df[' points '] >= x]. reset_index (drop= True ) print (df1) team points rebounds 0 to 22 11 1 B 24 8 2 F 29 5 3 G 31 9 #define df2 as DataFrame where 'points' is < 20 df2 = df[df[' points '] < x]. reset_index (drop= True ) print (df2) team points rebounds 0 C 19 10 1 D 18 6 2 E 14 6 3:16:12
Merk op dat de index van elk resulterend DataFrame nu begint bij 0.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende fouten in Python kunt oplossen:
Hoe KeyError in Panda’s te repareren
Oplossing: ValueError: Kan float NaN niet naar int converteren
Oplossing: ValueError: Operanden konden niet worden uitgezonden met vormen