# Kaip ieškoti duomenų rėmelių naudojant pandas isin()

Python pandas funkcija `DataFrame.isin()` yra skirta greitai ir efektyviai patikrinti, **ar tam tikros reikšmės egzistuoja DataFrame**. Ši funkcija yra ypač naudinga, kai reikia patikrinti kelias reikšmes vienu metu.

## Kokia yra pandas `isin()` sintaksė?

Pandas `isin()` naudoja vieną parametrą ir atrodo taip:

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

`values` parametras gali būti **Python sąrašas, Python žodynas arba kitas DataFrame**. Jis apima vertes, kurias norite ieškoti DataFrame.

Tip Jei dirbate su pandas serijomis, o ne su duomenų rėmeliais, galite naudoti lygiavertę funkciją `Series.isin()`.

## Kaip naudoti `isin()` su duomenų rėmeliais pandas

`isin()` galite naudoti įvairiais tikslais. Be verčių tikrinimo, jį taip pat galima naudoti duomenų rėmams filtruoti.

### Vertės stulpelyje tikrinimas

Pirmiausia pažvelkime į duomenų rėmelį, kuriame yra informacija apie skirtingus žmones ir jų gyvenamąsias vietas.

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

Duomenų rėmelis atrodo taip:

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

Dabar norime naudoti pandas `isin()`, kad patikrintume, ar stulpelyje „Miestas“ esantys miestai yra mūsų sukurtame atskirame miestų sąraše. Sukūrę sąrašą su atskaitos miestais, paleisime funkciją stulpelyje „Miestas“ duomenų rėmoje:

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

Rezultatas – tai boolių verčių serija, nurodanti, ar kiekvienas miestas stulpelyje „Miestas“ yra įtrauktas į `cities_to_check_against` sąrašą:

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

### Duomenų rėmo filtravimas naudojant `isin()`

Taip pat galite naudoti pandas `isin()`, kad filtruotumėte DataFrame, paliekant tik eilutes su miestais, kurie yra `cities_to_check_against` sąraše.

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

Rezultatas yra DataFrame, kuriame yra tik eilutės su miestais, kurie taip pat yra `cities_to_check_against` sąraše:

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

### Kelių stulpelių tikrinimas duomenų rėmelio

Sudėtingesnėms filtravimo operacijoms taip pat galite naudoti pandas `isin()` su žodynais. Toliau pateiktame pavyzdyje pamatysite, kaip žodynu galima vienu metu patikrinti kelis DataFrame stulpelius. Pirmiausia pridėsime stulpelį prie pradinio DataFrame, tada naudodami `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)
```

Šiuo atveju, iškvietus `isin()`, grąžinamas DataFrame su Būlio vertėmis, kurios nurodo, ar kiekvienoje skiltyje buvo įvykdytos sąlygos:

```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/lt-lt/digitalguide/interneto-svetaines/interneto-svetainiu-kurimas/python-pandas-dataframe-isin/](https://www.ionos.com/lt-lt/digitalguide/interneto-svetaines/interneto-svetainiu-kurimas/python-pandas-dataframe-isin/) for AI/LLM consumption.