Python pandas DataFrame-egenskapen iloc[] används för att välja data inom en pandas DataFrame med hjälp av index. Detta gör att du kan visa specifika rader och kolumner i en DataFrame.

Vad är syntaxen för pandas iloc[]?

Pandas iloc[] använder heltal för att ange vilka element från DataFrame som ska väljas. Den allmänna syntaxen för pandas DataFrame.iloc() är:

DataFrame.iloc[selection]
python

Du kan skicka ett enda heltal, en Python-lista med heltal, ett slice-objekt eller en Python-tupel med rad- och kolumnindex till pandas iloc[].

Hur man använder pandas DataFrame.iloc[]

Pandas iloc[]:s beteende ändras beroende på vilket värde du anger för egenskapen. Nedan finns olika exempel som illustrerar detta.

Välja en rad

Först ska vi skapa en DataFrame med olika personer, deras ålder och de städer där de bor:

import pandas as pd
# Example of how to create a DataFrame
data = {'Name': ['Alicia', 'Carlos', 'Dara', 'Craig'],
    'Age': [28, 24, 22, 32],
    'City': ['Nottingham', 'London', 'Cardiff', 'Hull']}
df = pd.DataFrame(data)
print(df)
python

Den resulterande DataFrame ser ut så här:

Name  Age        City
0   Alicia   28		Nottingham
1   Carlos   24		London
2     Dara   22		Cardiff
3    Craig   32		Hull

Med iloc[] kan du nu välja vilken rad som helst genom att ange motsvarande radindex:

# Selecting the first row (index 0)
result = df.iloc[0]
print(result)
python

I det här exemplet har den första raden (index 0) valts. Resultatet innehåller uppgifterna för Alicia:

Name       Alicia
Age            28
City     Nottingham
Name: 0, dtype: object

Välja en rad och en kolumn

Om du vill ange både rad- och kolumnindex, anger du bara dessa värden till iloc[] med ett kommatecken mellan dem:

# Select the first row and second column
result = df.iloc[0, 1]
print(result)
python

Med koden ovan väljer pandas iloc[] den första raden (index 0) och den andra kolumnen (index 1). Resultatet är Alicias ålder: 28.

Välja flera rader och kolumner med hjälp av segment

Du kan också välja flera rader och kolumner samtidigt med hjälp av Python-slices. Tänk på att indexet efter kolon inte ingår i valet.

# Select the first two rows and first two columns
result = df.iloc[0:2, 0:2]
print(result)
python

Resultatet för ovanstående kod är:

Name  Age
0  Alicia   28
1  Carlos   24

Här väljs de två första raderna (0:2) och de två första kolumnerna (0:2). Den resulterande DataFrame innehåller endast data i raderna 0 och 1 och kolumnerna 0 och 1.

Välja flera rader och kolumner med listor

Du kan också använda Python-listor för att markera flera rader och kolumner. Fördelen med listor är att du kan markera delar av DataFrame som inte ligger direkt intill varandra:

# Select the first and third rows and the second and third columns
result = df.iloc[[0, 2], [1, 2]]
print(result)
python

Här väljs den första och tredje raden ([0, 2]) samt den andra och tredje kolumnen ([1, 2]), vilket ger följande resultat:

Age        City
0     28    Nottingham
2     22     Cardiff
Gå till huvudmeny