# Sådan søger du i DataFrames ved hjælp af pandas isin()

Python -funktionen pandas `DataFrame.isin()` er designet til hurtigt og effektivt at kontrollere **, om bestemte værdier findes i en DataFrame**. Denne funktion er især nyttig til at kontrollere flere værdier på én gang.

## Hvad er syntaksen for pandas `isin()`?

Pandas `isin()` tager én parameter og ser sådan ud:

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

Parameteren `values` kan være en **Python-liste, en Python-ordbog eller en anden DataFrame**. Den indeholder de værdier, du vil søge efter i DataFrame.

Tip Hvis du arbejder med pandas Series i stedet for DataFrames, kan du bruge den tilsvarende funktion `Series.isin()`.

## Sådan bruges `isin()` med DataFrames i pandas

Du kan bruge `isin()` til forskellige formål. Ud over at kontrollere værdier kan det også bruges til at filtrere DataFrames.

### Kontrol af værdier i en kolonne

Lad os først se på en DataFrame, der indeholder oplysninger om forskellige personer og hvor de bor.

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

DataFrame ser således ud:

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

Nu vil vi bruge pandas `isin()` til at kontrollere, om byerne i kolonnen City forekommer i en separat liste over byer, vi har oprettet. Når vi har oprettet listen med referencebyerne, kører vi funktionen på DataFrame-kolonnen ‘City’:

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

Resultatet er en række boolske værdier, der angiver, om hver by i kolonnen By er til stede på listen `cities_to_check_against`:

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

### Filtrering af en DataFrame ved hjælp af `isin()`

Du kan også bruge pandas `isin()` til at filtrere en DataFrame, så kun de rækker med byer, der er på `cities_to_check_against`, bevares.

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

Resultatet er en DataFrame, der kun indeholder de rækker med byer, der også er på listen `cities_to_check_against`:

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

### Kontrol af flere kolonner i en DataFrame

Til mere komplekse filtreringsoperationer kan du også bruge pandas `isin()` med ordbøger. I det følgende eksempel kan du se, hvordan du kan bruge en ordbog til samtidig at kontrollere flere kolonner i en DataFrame. Først tilføjer vi en kolonne til den oprindelige DataFrame og bruger derefter `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)
```

I dette tilfælde returnerer kaldet `isin()` en DataFrame med boolske værdier, der angiver, om betingelserne er opfyldt i hver kolonne:

```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/da-dk/digitalguide/websteder/webudvikling/python-pandas-dataframe-isin/](https://www.ionos.com/da-dk/digitalguide/websteder/webudvikling/python-pandas-dataframe-isin/) for AI/LLM consumption.