Aufteilen eines DataFrames basierend auf dem Spaltenwert in Pandas
Bei der Datenanalyse stoßen wir häufig auf Situationen, in denen wir einen DataFrame in mehrere aufteilen müssen DataFrames basierend auf einem bestimmten Spaltenwert. Ein solcher Fall ist, wenn wir einen DataFrame in zwei Teile aufteilen möchten: einen, der Zeilen mit Werten unter einem bestimmten Schwellenwert enthält, und einen anderen, der Zeilen mit Werten über oder gleich diesem Schwellenwert enthält.
In Pandas können wir dies erreichen Aufteilung mittels boolescher Indizierung. So können wir diese Aufteilung anhand eines Beispiels erreichen:
Betrachten Sie den folgenden DataFrame mit einer Spalte namens „Sales“:
df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]}) print (df) A Sales 0 3 10 1 4 20 2 7 30 3 6 40 4 1 50
Angenommen, wir möchten diesen DataFrame basierend auf a in zwei Teile aufteilen Verkaufswert von 30:
Aufteilung mit direktem Vergleich:
Die einfachste Methode ist der direkte Vergleich mit dem booleschen Indexoperator '>=':
<code class="python">s = 30 df1 = df[df['Sales'] >= s] print (df1) A Sales 2 7 30 3 6 40 4 1 50</code>
Dadurch wird ein neuer DataFrame namens df1 erstellt, der alle Zeilen enthält, in denen der Umsatzwert größer oder gleich 30 ist.
Aufteilung mit inverser Maske:
Um einen DataFrame mit Zeilen zu erstellen, in denen der Umsatz kleiner als 30 ist, können wir die Maske mit ~ umkehren:
<code class="python">df2 = df[~mask] print (df2) A Sales 0 3 10 1 4 20</code>
Dadurch wird ein neuer DataFrame namens df2 erstellt, der alle Zeilen enthält, in denen der Umsatzwert kleiner ist als 30.
Das obige ist der detaillierte Inhalt vonWie teile ich einen DataFrame basierend auf einem bestimmten Spaltenwert in Pandas auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!