# Kuidas otsida andmeid DataFrames'is, kasutades pandas isin()

Python pandas funktsioon `DataFrame.isin()` on loodud selleks, et kiiresti ja tõhusalt kontrollida, **kas teatud väärtused eksisteerivad DataFrame’is**. See funktsioon on eriti kasulik mitme väärtuse korraga kontrollimiseks.

## Mis on pandas `isin()` süntaks?

Pandas `isin()` võtab ühe parameetri ja näeb välja järgmine:

```python
DataFrame.isin(values)
```

`values` parameeter võib olla **Python-nimekiri, Python-sõnastik või mõni muu DataFrame**. See sisaldab väärtusi, mida soovite DataFrame’is otsida.

Tip Kui töötate DataFrames’i asemel pandas Series’iga, võite kasutada samaväärset funktsiooni `Series.isin()`.

## Kuidas kasutada `isin()` koos andmeraamidega pandas

Võite kasutada `isin()` erinevatel eesmärkidel. Lisaks väärtuste kontrollimisele saab seda kasutada ka DataFrame’ide filtreerimiseks.

### Veeru väärtuste kontrollimine

Esmalt vaatame DataFrame’i, mis sisaldab teavet erinevate inimeste ja nende elukoha kohta.

```python
import pandas as pd
# Creating a DataFrame
data = {
    'Name': ['Amir', 'Bella', 'Charlize', 'David'],
    'City': ['Nottingham', 'London', 'Cardiff', 'Hull']
}
df = pd.DataFrame(data)
print(df)
```

Andmestruktuur näeb välja järgmine:

```none
Name      City
0    Amir    	Nottingham
1    Bella  	London
2    Charlize   Cardiff
3    David    Hull
```

Nüüd tahame kasutada pandas `isin()`, et kontrollida, kas veerus „City” olevad linnad esinevad meie loodud eraldi linnade nimekirjas. Kui oleme loonud nimekirja viitelinnadega, käivitame funktsiooni veerus „City” andmestruktuuris:

```python
# Cities for the list to be compared to
cities_to_check_against = ['Cardiff', 'Hull', 'Middlesbrough']
# Using the isin() method
result = df['City'].isin(cities_to_check_against)
print(result)
```

Tulemuseks on rida booli väärtusi, mis näitavad, kas iga linn veerus „Linn” on esindatud `cities_to_check_against` nimekirjas:

```none
0    False
1    False
2     True
3     True
Name: City, dtype: bool
```

### Andmestiku filtreerimine `isin()` abil

Võite kasutada ka pandas `isin()`, et filtreerida DataFrame’i, jättes alles ainult need read, kus on linnad, mis esinevad `cities_to_check_against` nimekirjas.

```python
# Filtering a DataFrame using isin()
filtered_df = df[df['City'].isin(cities_to_check_against)]
print(filtered_df)
```

Tulemuseks on DataFrame, mis sisaldab ainult neid ridu, kus on linnad, mis on ka `cities_to_check_against` nimekirjas:

```none
Name    	City
2  Charlize  	Cardiff
3  David  		Hull
```

### Mitme veeru kontrollimine andmestikus

Keerulisemate filtreerimisoperatsioonide jaoks võite kasutada ka pandas `isin()` koos sõnastikega. Järgmises näites näete, kuidas sõnastikku kasutada, et kontrollida samaaegselt mitut DataFrame’i veergu. Esmalt lisame algsele DataFrame’ile veeru ja seejärel kasutame `isin()`:

```python
# Creating a DataFrame
data = {
    'Name': ['Amir', 'Bella', 'Charlize', 'David'],
    'City': ['Nottingham', 'London', 'Cardiff', 'Hull'],
    'Age': [25, 30, 35, 40]
}
df = pd.DataFrame(data)
# Dictionary with values that the DataFrame should be checked against
values_to_check_against = {
    'City': ['Cardiff', 'Hull'],
    'Age': [30, 40]
}
# Using isin() with a dictionary
result = df.isin(values_to_check_against)
print(result)
```

Sellisel juhul tagastab `isin()` kutsumine DataFrame’i boolesete väärtustega, mis näitavad, kas tingimused on igas veerus täidetud:

```none
Name  City  Age
0  False  False  False
1  False  False   True
2  False   True  False
3  False   True   True
```


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