# Kuidas valida andmeid pandas DataFrames'ist loc\[\] abil

Python pandas raamatukogus on `DataFrame.loc[]` omadus, mis võimaldab valida andmeid DataFrame’ist siltide abil. See muudab DataFrame’ist konkreetsete ridade ja veergude väljavõtmise lihtsaks.

## Mis on pandas `loc[]` süntaks?

`loc[]` süntaks on üsna lihtne. Kõik, mida peate tegema, on edastada parameetrina valitud **veergude ja ridade sildid**:

```python
DataFrame.loc[selection]
```

Pandas `loc[]` versioonis tehakse valikud peamiselt siltide abil. See tähendab, et teie poolt esitatud parameeter 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](https://www.ionos.com/et-ee/digitalguide/veebisaidid/veebiarendus/python-pandas-dataframe-iloc/) valib andmed täisarvupõhiste positsioonide alusel. Siin on koodinäide, mis aitab erinevusi illustreerida. Esmalt loome [pandas DataFrame’i](https://www.ionos.com/et-ee/digitalguide/veebisaidid/veebiarendus/python-pandas-dataframe/):

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

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

```none
Name    Age
0   Alyssa     	23
1 	Brandon     35
2  	Carmen     	30
```

Andmestruktuurist „Alyssa” väljavõtmiseks võite kasutada nii pandas `loc[]` kui ka `iloc[]`. Kuigi lähenemisviis on erinev, on tulemus sama:

```python
# 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'
```

## Kuidas kasutada pandas `DataFrame.loc[]`

Pandas `loc[]` aitab teil **ekstraktida DataFrame’i alamhulki**. `loc[]` abil saate ekstraktida ühe rea või veeru, mitu rida ja veergu või isegi rakendada filtreerimise tingimusi. See paindlikkus muudab selle sobivaks mitmesugusteks kasutustapeteks.

### Ühe rea valimine

Vaadakem DataFrame’i näidet:

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

Siin on tulemuseks saadud andmestruktuur:

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

Brandonit (indeks 1) käsitleva rea andmete valimiseks võite kasutada pandas `loc[]`:

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

Siin on tulemus:

```none
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”:

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

Tulemuseks on algse DataFrame’i alamhulk:

```none
Name     City
0   Alyssa  Sheffield
1 Brandon   Glasgow
2  Carmen   Belfast
```

### Ridade valimine tingimuste alusel

Pandas `loc[]` abil saate valida ka ridade, mis vastavad kindlatele kriteeriumidele. Seda saate teha Boole’i võrdlusoperaatorite abil. Näiteks nii saate välja filtreerida kõik isikud, kes on vanemad kui 25:

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

Eespool toodud kood loob andmestiku, mis sisaldab ainult andmeid andmestikus olevate isikute kohta, kes on vanemad kui 25:

```none
Name  	Age     City
1 Brandon     35   Glasgow
2  Carmen     30   Belfast
```


This is a markdown version of: [https://www.ionos.com/et-ee/digitalguide/veebisaidid/veebiarendus/python-pandas-dataframe-loc/](https://www.ionos.com/et-ee/digitalguide/veebisaidid/veebiarendus/python-pandas-dataframe-loc/) for AI/LLM consumption.