Jak identifikovat chybějící hodnoty pomocí funkce pandas isna()
Funkce Python pandas DataFrame.isna() pomáhá uživatelům identifikovat chybějící data (NaN nebo None) v DataFrame. To může být obzvláště užitečné pro zjištění, zda je třeba data před zahájením analýzy vyčistit.
Jaká je syntaxe pro pandas isna()?
Jelikož pandas isna() nepřijímá žádné parametry, je jeho syntaxe poměrně jednoduchá:
DataFrame.isna()pythonJak používat funkci pandas isna()
Když se isna() použije na DataFrame, vytvoří nový DataFrame s logickými hodnotami. Pokud v původním DataFrame chybí hodnota (např. označená jako NaN nebo None), isna() zobrazí True v místě, kde se hodnota nachází. V opačném případě funkce zobrazí False.
Pokud kromě identifikace NaN nebo None hodnot chcete tyto hodnoty také odstranit, podívejte se na funkci pandas dropna(). Pokud tyto hodnoty nechcete odstranit, ale místo toho je systematicky nahradit, je k tomu užitečným nástrojem funkce fillna().
Identifikace chybějících hodnot v DataFrame
Následující příklad používá DataFrame s údaji o různých osobách, u nichž některé informace chybí.
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)pythonDataFrame vypadá takto:
Name Age City
0 Alice 25.0 Nottingham
1 Bob NaN London
2 None 35.0 Cardiff
3 David 40.0 NoneChybějící informace byly označeny jako None nebo NaN. Chcete-li zjistit, které hodnoty přesně chybí, můžete zavolat isna() na DataFrame.
# Applying pandas isna()
missing_values = df.isna()
print(missing_values)pythonFunkce vrací nový DataFrame, kde chybějící hodnoty z původních dat jsou označeny jako True, zatímco hodnoty, které jsou přítomny, jsou označeny jako False. Zde je výstup:
Name Age City
0 False False False
1 False True False
2 True False False
3 False False TruePočítání počtu chybějících hodnot v jednotlivých sloupcích
Může být také užitečné vědět, kolik hodnot v každém sloupci chybí, aby se vám lépe rozhodovalo, jak s nimi naložit. K spočítání počtu chybějících hodnot v každém sloupci můžete použít isna() spolu s funkcí sum() jazyka Python.
# Count missing values per column
missing_count = df.isna().sum()
print(missing_count)pythonZde je uveden počet chybějících hodnot v každém sloupci:
Name 1
Age 1
City 1
dtype: int64