Pandy - czyszczenie pustych komórek
Puste komórki
Puste komórki mogą potencjalnie dać błędny wynik podczas analizowania danych.
Usuń wiersze
Jednym ze sposobów radzenia sobie z pustymi komórkami jest usuwanie wierszy zawierających puste komórki.
Zwykle jest to w porządku, ponieważ zestawy danych mogą być bardzo duże, a usunięcie kilku wierszy nie będzie miało dużego wpływu na wynik.
Przykład
Zwróć nową ramkę danych bez pustych komórek:
import pandas as pd
df = pd.read_csv('data.csv')
new_df = df.dropna()
print(new_df.to_string())
W naszych przykładach czyszczenia będziemy używać pliku CSV o nazwie „dirtydata.csv”.
Pobierz dirtydata.csv . lub Otwórz dirtydata.csv
Uwaga: Domyślnie dropna()
metoda zwraca nową ramkę DataFrame i nie zmienia oryginału.
Jeśli chcesz zmienić oryginalną ramkę DataFrame, użyj
inplace = True
argumentu:
Przykład
Usuń wszystkie wiersze z wartościami NULL:
import pandas as pd
df = pd.read_csv('data.csv')
df.dropna(inplace = True)
print(df.to_string())
Uwaga: Teraz dropna(inplace = True)
NIE zwróci nowej ramki DataFrame, ale usunie wszystkie wiersze zawierające wartości NULL z oryginalnej ramki DataFrame.
Zastąp puste wartości
Innym sposobem radzenia sobie z pustymi komórkami jest wstawienie zamiast tego nowej wartości.
W ten sposób nie musisz usuwać całych wierszy tylko z powodu pustych komórek.
Metoda fillna()
pozwala nam zastąpić puste komórki wartością:
Przykład
Zastąp wartości NULL liczbą 130:
import pandas as pd
df = pd.read_csv('data.csv')
df.fillna(130, inplace = True)
Zamień tylko na określone kolumny
Powyższy przykład zastępuje wszystkie puste komórki w całej ramce danych.
Aby zastąpić tylko puste wartości dla jednej kolumny, określ nazwę kolumny dla DataFrame:
Przykład
Zastąp wartości NULL w kolumnach „Kalorie” liczbą 130:
import pandas as pd
df = pd.read_csv('data.csv')
df["Calories"].fillna(130, inplace = True)
Zostać certyfikowanym!
ZAPISZ 10 USD
Zamień za pomocą średniej, mediany lub trybu
Typowym sposobem zastępowania pustych komórek jest obliczenie wartości średniej, mediany lub trybu kolumny.
Pandas używa metod mean()
median()
i mode()
do obliczenia odpowiednich wartości dla określonej kolumny:
Przykład
Oblicz ŚREDNĄ i zastąp nią wszelkie puste wartości:
import pandas as pd
df = pd.read_csv('data.csv')
x = df["Calories"].mean()
df["Calories"].fillna(x, inplace = True)
Średnia = wartość średnia (suma wszystkich wartości podzielona przez liczbę wartości).
Przykład
Oblicz MEDIANĘ i zastąp nią wszelkie puste wartości:
import pandas as pd
df = pd.read_csv('data.csv')
x = df["Calories"].median()
df["Calories"].fillna(x, inplace = True)
Mediana = wartość w środku, po posortowaniu wszystkich wartości rosnąco.
Przykład
Oblicz TRYB i zastąp nim wszystkie puste wartości:
import pandas as pd
df = pd.read_csv('data.csv')
x = df["Calories"].mode()[0]
df["Calories"].fillna(x, inplace = True)
Mode = wartość, która pojawia się najczęściej.