Python pandas -funktio DataFrame.isna() auttaa käyttäjiä tun­nis­ta­maan puuttuvat tiedot (NaN tai None) DataFrame-ke­hyk­ses­sä. Tämä voi olla erityisen hyö­dyl­lis­tä, kun halutaan selvittää, onko tiedot puh­dis­tet­ta­va ennen analyysin aloit­ta­mis­ta.

Mikä on pandas isna():n syntaksi?

Koska pandas isna() ei ota vastaan pa­ra­met­re­ja, sen syntaksi on melko suo­ra­vii­vai­nen:

DataFrame.isna()
python

Kuinka käyttää pandas isna() -funktiota

Kun isna() so­vel­le­taan DataFrame-kehykseen, se luo uuden DataFrame-kehyksen, jossa on boo­le­ni­sia arvoja. Jos al­ku­pe­räi­ses­sä DataFrame-ke­hyk­ses­sä on puuttuva arvo (esim. merkitty NaN tai None), isna() näyttää True arvon sijainnin. Muussa ta­pauk­ses­sa funktio näyttää False.

Huomio

Jos haluat NaN tai None arvon tun­nis­ta­mi­sen lisäksi myös poistaa ne, tutustu pandas-funktioon dropna(). Jos et halua poistaa näitä arvoja, vaan korvata ne jär­jes­tel­mäl­li­ses­ti, fillna()-funktio on hyö­dyl­li­nen työkalu tähän tar­koi­tuk­seen.

Puut­tu­vien arvojen tun­nis­ta­mi­nen DataFrame-ke­hyk­ses­sä

Seu­raa­vas­sa esi­mer­kis­sä käytetään DataFrame-taulukkoa, joka sisältää tietoja eri hen­ki­löis­tä, joista osa on puut­teel­li­sia.

import pandas as pd
# Create DataFrame example
data = {
    'Name': ['Alice', 'Bob', None, 'David'],
    'Age': [25, None, 35, 40],
    'City': ['Nottingham', 'London', 'Cardiff', None]
}
df = pd.DataFrame(data)
print(df)
python

DataFrame näyttää tältä:

Name   Age         City
0  Alice  25.0     Nottingham
1    Bob   NaN  	London
2   None  35.0      Cardiff
3  David  40.0         None

Puuttuvat tiedot on merkitty numerolla None tai NaN. Jos haluat nähdä tarkasti, mitkä arvot puuttuvat, voit kutsua DataFrame-ke­hyk­ses­sä isna().

# Applying  pandas isna()
missing_values = df.isna()
print(missing_values)
python

Funk­tio­kut­su palauttaa uuden DataFrame-kehyksen, jossa al­ku­pe­räis­ten tietojen puuttuvat arvot on merkitty numerolla True ja olemassa olevat arvot numerolla False. Tässä on tulos:

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

Puut­tu­vien arvojen määrän las­ke­mi­nen sa­rak­keit­tain

Voi myös olla hyö­dyl­lis­tä tietää, kuinka monta arvoa puuttuu kustakin sa­rak­kees­ta, jotta voit päättää, miten niitä kä­si­tel­lään. Voit käyttää isna() yhdessä Pythonin sum() kanssa las­keak­se­si puut­tu­vien arvojen määrän kustakin sa­rak­kees­ta.

# Count missing values per column
missing_count = df.isna().sum()
print(missing_count)
python

Tämä näyttää puut­tu­vien arvojen määrän kussakin sa­rak­kees­sa:

Name     1
Age      1
City     1
dtype: int64
Siirry pää­va­lik­koon