Hoe rijnummers in een pandas dataframe te krijgen


Vaak wilt u misschien rijnummers in een Panda DataFrame krijgen die een bepaalde waarde bevatten.

Gelukkig is dit eenvoudig te doen met behulp van de .index- functie.

Deze tutorial toont verschillende voorbeelden van praktisch gebruik van deze functie.

Voorbeeld 1: Haal rijnummers op die overeenkomen met een bepaalde waarde

Stel dat we de volgende panda’s DataFrame hebben:

 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

We kunnen de volgende syntaxis gebruiken om de regelnummers te krijgen waarbij „team“ gelijk is aan Mavs:

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

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

We kunnen zien dat de teamnaam gelijk is aan ‚Mavs‘ bij lijnenindex 0 en 1 .

We kunnen ook de regelnummers krijgen waar de teamnaam voorkomt in een bepaalde lijst met teamnamen:

 #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')

We kunnen zien dat de teamnaam gelijk is aan ‚Mavs‘ of ‚Spurs‘ bij rij-indices 0 , 1 en 2 .

Voorbeeld 2: Verkrijg een uniek rijnummer

Stel dat we de volgende panda’s DataFrame hebben:

 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']})

Als u weet dat een enkele rij overeenkomt met een bepaalde waarde, kunt u dat unieke rijnummer ophalen met behulp van de volgende syntaxis:

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

3

We kunnen zien dat het team gelijk is aan „Celtics“ op rijindex nummer 3 .

Voorbeeld 3: Haal de som van regelnummers op

Stel dat we de volgende panda’s DataFrame hebben:

 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']})

Als u het totale aantal rijen wilt weten waarin een kolom gelijk is aan een bepaalde waarde, kunt u de volgende syntaxis gebruiken:

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

2

We kunnen zien dat dit team gelijk is aan “Mavs” op een totaal van 2 lijnen.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in panda’s kunt uitvoeren:

Hoe unieke waarden in meerdere kolommen in Panda’s te vinden
Hoe u een Pandas DataFrame op meerdere voorwaarden kunt filteren
Hoe ontbrekende waarden in een Pandas DataFrame te tellen

Einen Kommentar hinzufügen

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