Kuinka hakea DataFrames-tietokantoja pandas isin() -toiminnolla
Python pandas -funktio DataFrame.isin() on suunniteltu tarkistamaan nopeasti ja tehokkaasti , onko tiettyjä arvoja DataFrame-kehyksessä. Tämä funktio on erityisen hyödyllinen useiden arvojen samanaikaisessa tarkistamisessa.
Mikä on pandas isin():n syntaksi?
Pandas isin() ottaa yhden parametrin ja näyttää tältä:
DataFrame.isin(values)pythonvalues voi olla Python-lista, Python-sanakirja tai toinen DataFrame. Se sisältää arvot, joita haluat etsiä DataFrame-kehyksestä.
Jos työskentelet pandas-sarjojen kanssa DataFrames-sarjojen sijaan, voit käyttää vastaavaa toimintoa Series.isin().
Kuinka käyttää isin() DataFrames-kehyksissä pandas-kirjastossa
Voit käyttää isin() eri tarkoituksiin. Arvojen tarkistamisen lisäksi sitä voidaan käyttää myös DataFrame-taulukoiden suodattamiseen.
Sarakkeen arvojen tarkistaminen
Ensinnäkin, katsotaanpa DataFrame-taulukkoa, joka sisältää tietoja eri ihmisistä ja heidän asuinpaikoistaan.
import pandas as pd
# Creating a DataFrame
data = {
'Name': ['Amir', 'Bella', 'Charlize', 'David'],
'City': ['Nottingham', 'London', 'Cardiff', 'Hull']
}
df = pd.DataFrame(data)
print(df)pythonDataFrame näyttää tältä:
Name City
0 Amir Nottingham
1 Bella London
2 Charlize Cardiff
3 David HullNyt haluamme käyttää pandas isin() tarkistaaksemme, esiintyvätkö City-sarakkeen kaupungit erillisessä luomassamme kaupunkiluettelossa. Kun olemme luoneet luettelon viitekaupungeista, suoritamme toiminnon DataFrame-sarakkeen “City” kohdalla:
# 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)pythonTuloksena on sarja boolenaisia arvoja, jotka osoittavat, onko jokainen kaupunki City-sarakkeessa mukana cities_to_check_against luettelossa:
0 False
1 False
2 True
3 True
Name: City, dtype: boolDataFrame-kehyksen suodattaminen käyttämällä isin()
Voit myös käyttää pandas isin() suodattamaan DataFrame-taulukon ja säilyttää vain rivit, joissa on cities_to_check_against luettelossa esiintyviä kaupunkeja.
# Filtering a DataFrame using isin()
filtered_df = df[df['City'].isin(cities_to_check_against)]
print(filtered_df)pythonTuloksena on DataFrame, joka sisältää vain rivit, joissa on kaupunkeja, jotka ovat myös cities_to_check_against luettelossa:
Name City
2 Charlize Cardiff
3 David HullUseiden sarakkeiden tarkistaminen DataFrame-kehyksessä
Monimutkaisempia suodatustoimintoja varten voit käyttää myös pandas isin() -kirjastoa sanakirjojen kanssa. Seuraavassa esimerkissä näet, kuinka voit käyttää sanakirjaa tarkistaaksesi samanaikaisesti useita DataFrame-taulukon sarakkeita. Ensin lisätään sarake alkuperäiseen DataFrame-taulukkoon ja sitten käytetään isin():
# 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)pythonTässä tapauksessa isin() tuloksena saadaan DataFrame-taulukko, jossa on boolenilaisia arvoja, jotka osoittavat, ovatko ehdot täyttyneet kussakin sarakkeessa:
Name City Age
0 False False False
1 False False True
2 False True False
3 False True True