Pandas: Teilen eines DataFrames basierend auf Spaltenwerten
Bei der Arbeit mit Pandas DataFrames besteht die Notwendigkeit, die Daten basierend auf Spaltenwerten in Teilmengen aufzuteilen bestimmte Spaltenwerte. Ein häufiges Szenario ist die Aufteilung eines DataFrames basierend auf einem Schwellenwert. So können Sie dies erreichen:
Boolesche Masken erstellen
Die einfachste Methode besteht darin, mithilfe von Vergleichsoperatoren eine boolesche Maske zu erstellen. Durch Anwenden der Maske auf den DataFrame können Sie zwei DataFrames mit Daten erstellen, die die von der Maske festgelegten Bedingungen erfüllen.
Zum Beispiel, um einen DataFrame durch eine Spalte namens „Sales“ mit Verkaufswerten kleiner als und größer als aufzuteilen oder gleich einem angegebenen Schwellenwert:
<code class="python">import pandas as pd df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]}) print(df) s = 30 # Boolean mask for rows where Sales >= s sales_ge_mask = df['Sales'] >= s # DataFrame with Sales >= s df1 = df[sales_ge_mask] print(df1) # Boolean mask for rows where Sales < s sales_lt_mask = df['Sales'] < s # DataFrame with Sales < s df2 = df[sales_lt_mask] print(df2)
Sie können die Maske mit dem „~“-Operator umkehren, um den DataFrame basierend auf der Negation der Bedingung aufzuteilen.
<code class="python"># Boolean mask for rows where Sales < s sales_lt_mask = df['Sales'] < s # DataFrame with Sales >= s df1 = df[~sales_lt_mask] print(df1) # DataFrame with Sales < s df2 = df[sales_lt_mask] print(df2)</code>
Diese Methode erstellt effizient Teilmengen von DataFrames basierend auf maßgeschneiderten Bedingungen.
Das obige ist der detaillierte Inhalt vonWie teile ich einen DataFrame basierend auf Spaltenwerten in Pandas auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!