So erhalten sie zeilennummern in einem pandas dataframe


Häufig möchten Sie möglicherweise Zeilennummern in einem Pandas-DataFrame abrufen, die einen bestimmten Wert enthalten.

Glücklicherweise ist dies mit der .index- Funktion einfach zu bewerkstelligen.

Dieses Tutorial zeigt einige Beispiele für die praktische Verwendung dieser Funktion.

Beispiel 1: Zeilennummern abrufen, die einem bestimmten Wert entsprechen

Angenommen, wir haben den folgenden Pandas-DataFrame:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'team': ['Mavs', 'Mavs', 'Spurs', 'Celtics', 'Warriors']})

#view DataFrame 
print (df)

        team assists points
0 25 5 Mavs
1 12 7 Mavs
2 15 7 Spurs
3 14 9 Celtics
4 19 12 Warriors

Wir können die folgende Syntax verwenden, um die Zeilennummern zu erhalten, wobei „team“ gleich Mavs ist:

 #get row numbers where 'team' is equal to Mavs
df[df[' team '] == ' Mavs ']. index

Int64Index([0, 1], dtype='int64')

Wir können sehen, dass der Teamname in den Zeilenindex 0 und 1 „Mavs“ entspricht.

Wir können auch die Zeilennummern abrufen, in denen der Teamname in einer bestimmten Liste von Teamnamen zu finden ist:

 #get row numbers where 'team' is equal to Mavs or Spurs
filter_list = [' Mavs ', ' Spurs ']

#return only rows where team is in the list of team names
df[df. team . isin (filter_list)]. index

Int64Index([0, 1, 2], dtype='int64')

Wir können sehen, dass der Teamname bei den Zeilenindizes 0 , 1 und 2 „Mavs“ oder „Spurs“ entspricht.

Beispiel 2: Erhalten Sie eine eindeutige Zeilennummer

Angenommen, wir haben den folgenden Pandas-DataFrame:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'team': ['Mavs', 'Mavs', 'Spurs', 'Celtics', 'Warriors']})

Wenn Sie wissen, dass eine einzelne Zeile mit einem bestimmten Wert übereinstimmt, können Sie diese eindeutige Zeilennummer mithilfe der folgenden Syntax abrufen:

 #get the row number where team is equal to Celtics
df[df[' team '] == ' Celtics ']. index [ 0 ]

3

Wir können sehen, dass das Team bei Zeilenindex Nummer 3 gleichauf mit „Celtics“ ist.

Beispiel 3: Ermitteln Sie die Summe der Zeilennummern

Angenommen, wir haben den folgenden Pandas-DataFrame:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'team': ['Mavs', 'Mavs', 'Spurs', 'Celtics', 'Warriors']})

Wenn Sie die Gesamtzahl der Zeilen wissen möchten, in denen eine Spalte einem bestimmten Wert entspricht, können Sie die folgende Syntax verwenden:

 #find total number of rows where team is equal to Mavs
len (df[df[' team '] == ' Celtics ']. index )

2

Wir können sehen, dass dieses Team in insgesamt 2 Zeilen den „Mavs“ ebenbürtig ist.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in Pandas ausführen:

So finden Sie in Pandas eindeutige Werte in mehreren Spalten
So filtern Sie einen Pandas DataFrame nach mehreren Bedingungen
So zählen Sie fehlende Werte in einem Pandas DataFrame

Einen Kommentar hinzufügen

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