Aufteilen eines Pandas-DataFrames nach einem Spaltenwert
Stellen Sie sich ein Szenario vor, in dem Sie einen DataFrame mit einer Spalte namens „Sales“ haben. Sie möchten diesen DataFrame basierend auf den Werten in der Spalte „Sales“ in zwei Datenrahmen aufteilen, sodass der erste DataFrame Daten enthält, bei denen „Sales“ unter einem angegebenen Schwellenwert liegt, während der zweite DataFrame Daten enthält, bei denen „Sales“ größer als ist oder gleich dem Schwellenwert.
Um dies zu erreichen, können Sie die boolesche Indizierung in Pandas nutzen. Hier ist ein Beispiel:
<code class="python">import pandas as pd # Create a sample DataFrame df = pd.DataFrame({'Sales': [10, 20, 30, 40, 50], 'A': [3, 4, 7, 6, 1]}) print(df) # Set the threshold (s) s = 30 # Split the DataFrame based on the 'Sales' column df1 = df[df['Sales'] >= s] print(df1) df2 = df[df['Sales'] < s] print(df2)
Ausgabe:
A Sales 0 3 10 1 4 20 2 7 30 3 6 40 4 1 50 A Sales 2 7 30 3 6 40 4 1 50 A Sales 0 3 10 1 4 20
Alternativ können Sie den inversen Maskenoperator (~) verwenden, um das gleiche Ergebnis zu erzielen:
<code class="python">mask = df['Sales'] >= s df1 = df[mask] df2 = df[~mask] print(df1) print(df2)</code>
Dies hat den gleichen Effekt wie im vorherigen Beispiel.
Das obige ist der detaillierte Inhalt vonWie teile ich einen Pandas-DataFrame basierend auf einem Spaltenwertschwellenwert auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!