
Jeśli pracujesz z językiem Python i korzystasz z biblioteki Pandas, to na pewno spotkałeś się z koniecznością sprawdzania brakujących danych. W takich sytuacjach przydaje się funkcja pandas.isna(). Jak dokładnie działa? W tym artykule przyjrzymy się jej zastosowaniom i pokażę kilka praktycznych przykładów.
Czym jest pandas.isna()?
Funkcja pandas.isna() to metoda dostępna w bibliotece Pandas, która pozwala identyfikować brakujące wartości w strukturach danych takich jak Series oraz DataFrame. W zwracanych wynikach, brakujące wartości oznaczane są jako True, natomiast wartości obecne jako False.
Jak używać pandas.isna() w Pythonie?
Najprostszy sposób na wykorzystanie tej funkcji to zastosowanie jej do obiektów Pandas. Może działać zarówno na pojedynczych kolumnach danych, jak i całych zbiorach.
1. Sprawdzenie brakujących wartości w Series
Seria Pandas to jednowymiarowa struktura danych, czyli coś w rodzaju listy z indeksami. Zobaczmy przykład:
import pandas as pd
# Tworzymy Series z brakującymi wartościami
data = pd.Series([1, 2, None, 4, None, 6])
# Zastosowanie isna()
missing_values = data.isna()
print(missing_values)
Wynik:
0 False
1 False
2 True
3 False
4 True
5 False
dtype: bool
Widzimy, że w miejscach, gdzie występują wartości None, funkcja zwróciła True.
2. Sprawdzenie braków w DataFrame
W przypadku DataFrame, gdzie mamy wiele kolumn, funkcja pandas.isna() działa na całą tabelę.
import pandas as pd
# Tworzymy DataFrame z brakującymi danymi
data = {'A': [1, 2, None, 4], 'B': [None, 5, 6, None]}
df = pd.DataFrame(data)
# Sprawdzenie brakujących wartości
missing_values_df = df.isna()
print(missing_values_df)
Wynik:
A B
0 False True
1 False False
2 True False
3 False True
Widzimy, że Pandas zwraca True w miejscach, gdzie brakuje danych.
Przydatne zastosowania pandas.isna()
Funkcja pandas.isna() przydaje się nie tylko do identyfikowania braków, ale także do ich obsługi. Oto kilka popularnych zastosowań:
1. Liczenie brakujących wartości
Można łatwo obliczyć, ile wartości brakuje w każdej kolumnie:
missing_count = df.isna().sum()
print(missing_count)
Wynik:
A 1
B 2
dtype: int64
2. Filtrowanie wierszy z brakami
Jeśli chcemy wyświetlić tylko te wiersze, w których występują braki:
rows_with_missing_values = df[df.isna().any(axis=1)]
print(rows_with_missing_values)
Wynik:
A B
0 1.0 NaN
2 NaN 6.0
3 4.0 NaN
3. Usuwanie braków
W przypadku chęci usunięcia wierszy z brakami można użyć:
df_cleaned = df.dropna()
print(df_cleaned)
4. Uzupełnianie brakujących wartości
Jeśli chcemy zastąpić brakujące wartości określoną liczbą, np. zerem:
df_filled = df.fillna(0)
print(df_filled)
Podsumowanie
Funkcja pandas.isna() w Pythonie to potężne narzędzie do identyfikacji braków w zbiorach danych. Dzięki niej możemy nie tylko sprawdzać, gdzie brakuje wartości, ale także je analizować, filtrować oraz uzupełniać. Warto z niej korzystać przy przetwarzaniu danych, aby uniknąć błędów wynikających z pustych komórek. Mam nadzieję, że ten artykuł rozjaśnił Ci działanie tej funkcji w Pandas i pomoże w Twojej pracy z danymi!
Inny ciekawy artykuł:
Jak działa pandas to_numeric w języku Python? Przykład zastosowania
Opanuj analizę danych w Pythonie z moim kursem!
Opanujesz podstawy programowania w Pythonie, w tym typy danych, zmienne, listy, słowniki, funkcje oraz obsługę błędów. Nauczysz się korzystać z biblioteki pandas do zaawansowanej analizy danych i pracy z różnymi rodzajami danych. Zrozumiesz proces analizy, eksploracji (EDA) i wizualizacji. Tworzenie własnych funkcji przygotuje Cię do rozmów kwalifikacyjnych i rozwiązywania rzeczywistych problemów biznesowych.
Zostań analitykiem danych – dołącz do KajoDataSpace!
Najlepsza ścieżka do zawodu analityka danych. Dostęp do pełnych wersji kursów online z Excela, SQLa, PowerBI, Tableau i Pythona z certyfikatami!
🟨 Ekskluzywana ale pomagająca sobie społeczność.
🟩 Ponad 75 godzin materiałów video.
🟨 Spotkania LIVE co miesiąc.
🟩 Mój osobisty mentoring.

