# Kā atlasīt datus no pandas DataFrames ar loc\[\]

Python pandas bibliotēkā `DataFrame.loc[]` ir īpašība, kas ļauj izvēlēties datus no DataFrame, izmantojot etiķetes. Tas atvieglo konkrētu rindu un kolonnu izvilkšanu no DataFrame.

## Kāda ir pandas `loc[]` sintakse?

`loc[]` sintakse ir diezgan vienkārša. Viss, kas jums jādara, ir kā parametru nodot izvēlēto **kolonnu un rindu nosaukumus**:

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

Ar pandas `loc[]` izvēle galvenokārt tiek veikta, izmantojot marķierus. Tas nozīmē, ka jūsu norādītais parametrs var būt **viens marķieris, saraksts vai marķieru fragments**. Var izmantot arī booles masīvus.

## Kāda ir atšķirība starp `loc[]` un `iloc[]`?

Kamēr pandas `DataFrame.loc[]` atlasa datus, pamatojoties uz etiķetēm, [DataFrame.iloc](https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/python-pandas-dataframe-iloc/) atlasa datus, pamatojoties uz veselo skaitļu pozīcijām. Šeit ir koda piemērs, kas palīdz ilustrēt atšķirības. Vispirms izveidosim [pandas DataFrame](https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/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)
```

Šādi izskatās DataFrame:

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

Lai izvilktu “Alyssa” no DataFrame, varat izmantot gan pandas `loc[]`, gan `iloc[]`. Lai gan pieeja atšķiras, rezultāts ir viens un tas pats:

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

## Kā lietot pandas `DataFrame.loc[]`

Pandas `loc[]` palīdz **izgūt DataFrame apakškopas**. Ar `loc[]` var izgūt vienu rindu vai kolonu, vairākas rindas un kolonnas vai pat piemērot filtrēšanas nosacījumus. Šī elastība padara to piemērotu dažādiem lietošanas gadījumiem.

### Vienas rindas atlasīšana

Apskatīsim DataFrame piemēru:

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

Šeit ir redzams, kā izskatās rezultātā iegūtais DataFrame:

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

Lai atlasītu datus no rindas, kas satur informāciju par Brandonu (indekss 1), varat izmantot pandas `loc[]`:

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

Šeit ir rezultāts:

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

### Vairāku kolonnu atlase

Jūs varat arī izmantot `DataFrame.loc[]`, lai atlasītu kolonnu apakškopu. Šis kods atlasa kolonnu “Name” un “City”:

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

Rezultāts ir sākotnējā DataFrame apakškopa:

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

### Rindu atlase, pamatojoties uz nosacījumiem

Ar pandas `loc[]` varat arī atlasīt rindas, kas atbilst konkrētiem kritērijiem. To var izdarīt, izmantojot Boole’a salīdzināšanas operatorus. Piemēram, šeit ir parādīts, kā atlasīt visus indivīdus, kas ir vecāki par 25 gadiem:

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

Iepriekš minētais kods izveido DataFrame, kas ietver tikai datus par DataFrame indivīdiem, kuri ir vecāki par 25 gadiem:

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


This is a markdown version of: [https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/python-pandas-dataframe-loc/](https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/python-pandas-dataframe-loc/) for AI/LLM consumption.