Python pandas funkt­sioon DataFrame.isna() aitab ka­su­ta­ja­tel tuvastada puuduvaid andmeid (NaN või None) DataFrame’is. See võib olla eriti kasulik, et näha, kas andmeid on vaja puhastada enne analüüsi alus­ta­mist.

Mis on pandas isna() süntaks?

Kuna pandas isna() ei võta vastu mingeid pa­ra­meetreid, on selle süntaks üsna lihtne:

DataFrame.isna()
python

Kuidas kasutada pandas isna() funkt­siooni

Kui isna() ra­ken­da­takse DataFrame’ile, loob see uue DataFrame’i boolesete väär­tus­tega. Kui algses DataFrame’is puudub väärtus (nt märgitud kui NaN või None), näitab isna() väärtuse asukoha True. Muidu kuvab funkt­sioon False.

Note

Kui soovite lisaks NaN või None väärtuse tu­vas­ta­misele need ka eemaldada, vaadake pandas dropna() funkt­siooni. Kui te ei soovi neid väärtusi eemaldada, vaid süs­te­maa­ti­li­selt asendada, on fillna() funkt­sioon selleks sobiv vahend.

Puuduvate väärtuste tu­vas­ta­mine and­mes­ti­kus

Järgmises näites ka­su­ta­takse DataFrame’i, mis sisaldab andmeid erinevate isikute kohta, kusjuures osa teavet puudub.

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

And­me­st­ruk­tuur näeb välja järgmine:

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

Puuduv teave on märgitud numb­ri­tega None või NaN. Et näha täpselt, millised väärtused puuduvad, võite DataFrame’is kutsuda isna().

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

Funkt­sioo­ni­kõne tagastab uue DataFrame’i, kus al­gand­mete puuduvad väärtused on märgitud numbriga True, samas kui ole­mas­ole­vad väärtused on märgitud numbriga False. Siin on väljund:

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

Puuduvate väärtuste arvu loen­da­mine veerus

Samuti võib olla kasulik teada, kui palju väärtusi igas veerus puudub, et otsustada, kuidas neid käsitleda. Igas veerus puuduvate väärtuste arvu loen­da­miseks võite kasutada isna() koos Pythoni funkt­sioo­niga sum().

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

See näitab puuduvate väärtuste arvu igas veerus:

Name     1
Age      1
City     1
dtype: int64
Go to Main Menu