Pandas: so erreichen sie die erste reihe jeder gruppe


Sie können die folgende grundlegende Syntax verwenden, um die erste Zeile jeder Gruppe in einem Pandas-DataFrame abzurufen:

 df. groupby (' column_name '). nth ( 0 )

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Holen Sie sich die erste Zeile jeder Gruppe in Pandas

Angenommen, wir haben den folgenden Pandas-DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 29],
                   ' assists ': [5, 19, 14, 8, 9, 12, 13, 8]})

#view DataFrame
df

	team points assists
0 to 18 5
1 To 22 19
2 B 19 14
3 B 14 8
4 B 14 9
5 C 11 12
6 C 20 13
7 C 29 8

Wir können den folgenden Code verwenden, um die erste Zeile für jedes Team abzurufen:

 #get first row for each team
df. groupby (' team '). nth ( 0 )

	assist points
team		
At 18 5
B 19 14
C 11 12

Wir können auch as_index=False angeben, um die ursprünglichen Indexwerte beizubehalten:

 #get first row for each team, keep original index values
df. groupby (' team ', as_index= False ). nth ( 0 )

        team points assists
0 to 18 5
2 B 19 14
5 C 11 12

Beachten Sie außerdem, dass Sie eine Werteliste an die Funktion nth() übergeben können, wenn Sie die ersten n Zeilen jeder Gruppe erhalten möchten.

Der folgende Code zeigt beispielsweise, wie die ersten beiden Zeilen jeder Gruppe abgerufen werden:

 #get first two rows for each team, keep original index values
df. groupby (' team ', as_index= False ). nth (( 0,1 ) )

team points assists
0 to 18 5
1 To 22 19
2 B 19 14
3 B 14 8
5 C 11 12
6 C 20 13

Hinweis : Die vollständige Dokumentation zur Funktion nth() finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in Pandas ausgeführt werden:

So erhalten Sie die erste Zeile von Pandas DataFrame
So entfernen Sie die erste Zeile in Pandas DataFrame
So fügen Sie eine Zeile in einen Pandas DataFrame ein

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert