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