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 = Trueargumentu:

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)

w3schools CERTIFIED . 2021

Zostać certyfikowanym!

Wypełnij moduły Pandy, wykonaj ćwiczenia, podejdź do egzaminu, a uzyskasz certyfikat w3schools!

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.