Pandas je široce používaná open-source knihovna pro manipulaci s daty pro Python. Poskytuje datové struktury a funkce potřebné pro efektivní manipulaci a analýzu velkých datových sad. Jedním z běžných problémů, s nimiž se vědci a analytici setkávají při používání pand, je zpracování chybějících hodnot v datové sadě. V tomto článku prozkoumáme, jak spočítat počet chybějících hodnot v datovém rámci pandas pomocí různých technik, podrobných vysvětlení kódu a ponoříme se hlouběji do některých knihoven a funkcí zapojených do řešení tohoto problému.
Počítání chybějících hodnot v pandách
Chcete-li začít, musíme nejprve importovat knihovnu pandas. Pokud jste jej ještě nenainstalovali, jednoduše spusťte příkaz `pip install pandas` ve svém terminálu nebo příkazovém řádku.
import pandas as pd
Jakmile naimportujeme knihovnu pandas, vytvořme ukázkový DataFrame s chybějícími hodnotami, který budeme v tomto článku používat k demonstraci různých technik počítání chybějících hodnot.
data = { 'Name': ['Anna', 'Ben', 'Carla', None, 'Eva'], 'Age': [25, None, 30, 35, None], 'City': ['NY', 'LA', None, 'SF', 'LA'] } df = pd.DataFrame(data)
V tomto příkladu máme DataFrame se třemi sloupci: Jméno, Věk a Město. Chybí některé hodnoty, které najdeme a spočítáme v další části.
Hledání a počítání chybějících hodnot pomocí isnull() a sum()
První metodou pro počítání chybějících hodnot v datovém rámci pandas je použití isnull() funkce. Tato funkce vrací DataFrame stejného tvaru jako originál, ale s hodnotami True nebo False indikujícími, zda odpovídající záznam chybí (tj. obsahuje None nebo NaN) nebo ne.
missing_values = df.isnull()
Nyní máme DataFrame stejného tvaru s hodnotami True označujícími chybějící položky. Pro sčítání těchto chybějících hodnot můžeme jednoduše použít součet() funkce. Jeho použitím přes DataFrame můžeme získat počet chybějících hodnot pro každý sloupec.
count_missing_values = df.isnull().sum()
Získáme tak řadu pand s počtem chybějících hodnot pro každý sloupec v našem DataFrame.
Alternativní přístup: Použití isna() a sum()
Dalším přístupem k počítání chybějících hodnot v datovém rámci pandas je použití isna() funkce. Je to alias pro isnull() a funguje stejným způsobem.
count_missing_values = df.isna().sum()
To poskytne stejný výsledek jako předchozí přístup, přičemž se spočítá počet chybějících hodnot pro každý sloupec v našem DataFrame.
Počítání chybějících hodnot v celém datovém rámci
Pokud chceme najít celkový počet chybějících hodnot v celém DataFrame, můžeme jednoduše řetězit další součet() funkce po první funkci sum().
total_missing_values = df.isnull().sum().sum()
Tím se vrátí celkový počet chybějících hodnot v celém DataFrame.
Stručně řečeno, zpracování chybějících hodnot v pandách je zásadním krokem ve fázi čištění a předběžného zpracování dat. Pomocí funkcí isnull() nebo isna() v kombinaci s funkcí sum() můžeme efektivně spočítat počet chybějících hodnot v našem DataFrame, což usnadňuje řešení a správu problémů s chybějícími daty v naší analýze.