
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!
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, Tableau i Pythona z certyfikatami + specjalistycznych webinarów z PowerBI.
Ekskluzywana ale pomagająca sobie społeczność.
Ponad 61 godzin materiałów video.
Spotkania LIVE co miesiąc.
Mój osobisty mentoring.