Python pandas raa­ma­tu­ko­gus on DataFrame.loc[] omadus, mis võimaldab valida andmeid DataFrame’ist siltide abil. See muudab DataFrame’ist konk­reet­sete ridade ja veergude väl­ja­võt­mise lihtsaks.

Mis on pandas loc[] süntaks?

loc[] süntaks on üsna lihtne. Kõik, mida peate tegema, on edastada pa­ra­meet­rina valitud veergude ja ridade sildid:

DataFrame.loc[selection]
python

Pandas loc[] ver­sioo­nis tehakse valikud peamiselt siltide abil. See tähendab, et teie poolt esitatud pa­ra­mee­ter võib olla üksik silt, nimekiri või siltide valik. Samuti võib kasutada boolesed massiivid.

Mis vahe on loc[] ja iloc[] vahel?

Kui pandas DataFrame.loc[] valib andmed siltide alusel, siis DataFrame.iloc valib andmed täis­ar­vu­põ­histe po­sit­sioo­nide alusel. Siin on koo­di­näide, mis aitab erinevusi il­lust­ree­rida. Esmalt loome pandas DataFrame’i:

import pandas as pd
# Example DataFrame
data = {'Name': ['Alyssa', 'Brandon', 'Carmen'], 'Age': [23, 35, 30]}
df = pd.DataFrame(data)
print(df)
python

Siin on näha, kuidas DataFrame välja näeb:

Name    Age
0   Alyssa     	23
1 	Brandon     35
2  	Carmen     	30

And­me­st­ruk­tuu­rist „Alyssa” väl­ja­võt­miseks võite kasutada nii pandas loc[] kui ka iloc[]. Kuigi lä­he­ne­mis­viis on erinev, on tulemus sama:

# Using loc and labels to extract Alyssa
print(df.loc[0, 'Name'])  # Output: 'Alyssa'
# Using iloc and integers to extract Alysa
print(df.iloc[0, 0])  # Output: 'Alyssa'
python

Kuidas kasutada pandas DataFrame.loc[]

Pandas loc[] aitab teil ekst­rak­tida DataFrame’i alamhulki. loc[] abil saate ekst­rak­tida ühe rea või veeru, mitu rida ja veergu või isegi rakendada filt­ree­ri­mise tingimusi. See paind­lik­kus muudab selle sobivaks mit­me­su­gus­teks ka­su­tus­ta­pe­teks.

Ühe rea valimine

Vaadakem DataFrame’i näidet:

import pandas as pd
data = {
    'Name': ['Alyssa', 'Brandon', 'Carmen'],
    'Age': [23, 35, 30],
    'City': ['Sheffield', 'Glasgow', 'Belfast']
}
df = pd.DataFrame(data)
print(df)
python

Siin on tu­le­mu­seks saadud and­me­st­ruk­tuur:

Name  	Age      City
0   Alyssa  23	 	Sheffield
1 Brandon  	35    Glasgow
2 Carmen    30    Belfast

Brandonit (indeks 1) käsitleva rea andmete va­li­miseks võite kasutada pandas loc[]:

brandon_data = df.loc[1]
print(brandon_data)
python

Siin on tulemus:

Name         Brandon
Age              35
City        	Glasgow
Name: 1, dtype: object

Mitme veeru valimine

Võite kasutada ka DataFrame.loc[], et valida veergude alamhulk. Järgmine kood valib veerud „Nimi” ja „Linn”:

name_city = df.loc[:, ['Name', 'City']]
print(name_city)
python

Tu­le­mu­seks on algse DataFrame’i alamhulk:

Name     City
0   Alyssa  Sheffield
1 Brandon   Glasgow
2  Carmen   Belfast

Ridade valimine tin­gi­muste alusel

Pandas loc[] abil saate valida ka ridade, mis vastavad kind­la­tele kri­tee­riumi­dele. Seda saate teha Boole’i võrd­lusope­raa­to­rite abil. Näiteks nii saate välja filt­ree­rida kõik isikud, kes on vanemad kui 25:

older_than_25 = df.loc[df['Age'] > 25]
print(older_than_25)
python

Eespool toodud kood loob and­mes­tiku, mis sisaldab ainult andmeid and­mes­ti­kus olevate isikute kohta, kes on vanemad kui 25:

Name  	Age     City
1 Brandon     35   Glasgow
2  Carmen     30   Belfast
Go to Main Menu