Kā identificēt trūkstošās vērtības ar pandas isna() funkciju
Python pandas funkcija DataFrame.isna() palīdz lietotājiem identificēt trūkstošos datus (NaN vai None) DataFrame. Tas var būt īpaši noderīgi, lai redzētu, vai dati ir jāattīra pirms analīzes sākšanas.
Kāda ir pandas isna() sintakse?
Tā kā pandas isna() nepieņem nekādus parametrus, tā sintakse ir diezgan vienkārša:
DataFrame.isna()pythonKā lietot pandas isna() funkciju
Kad isna() tiek piemērots DataFrame, tas izveido jaunu DataFrame ar Boole’a vērtībām. Ja sākotnējā DataFrame trūkst kāda vērtība (piemēram, atzīmēta kā NaN vai None), isna() parādīs True, kur atrodas vērtība. Pretējā gadījumā funkcija parādīs False.
Ja papildus NaN vai None vērtību identificēšanai vēlaties arī tās izdzēst, izmantojiet pandas dropna() funkciju. Ja nevēlaties izdzēst šīs vērtības, bet gan sistemātiski aizstāt tās, noderīgs rīks šim nolūkam ir fillna() funkcija.
Trūkstošo vērtību identificēšana DataFrame
Šajā piemērā izmantots DataFrame ar datiem par dažādām personām, kur daļa informācijas ir trūkstoša.
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 izskatās šādi:
Name Age City
0 Alice 25.0 Nottingham
1 Bob NaN London
2 None 35.0 Cardiff
3 David 40.0 NoneTrūkstošā informācija ir atzīmēta kā None vai NaN. Lai redzētu, kādas tieši vērtības trūkst, varat izsaukt isna() uz DataFrame.
# Applying pandas isna()
missing_values = df.isna()
print(missing_values)pythonFunkcijas izsaukums atgriež jaunu DataFrame, kurā trūkstošās vērtības no sākotnējiem datiem ir atzīmētas kā True, bet esošās vērtības ir atzīmētas kā False. Šeit ir izvade:
Name Age City
0 False False False
1 False True False
2 True False False
3 False False TrueTrūkstošo vērtību skaitīšana katrā ailē
Var būt noderīgi zināt, cik daudz vērtību trūkst katrā ailē, lai palīdzētu izlemt, kā rīkoties. Jūs varat izmantot isna() kopā ar Python sum() funkciju, lai skaitītu trūkstošo vērtību skaitu katrā ailē.
# Count missing values per column
missing_count = df.isna().sum()
print(missing_count)pythonTas parāda trūkstošo vērtību skaitu katrā ailē:
Name 1
Age 1
City 1
dtype: int64