Pandy: jak używać dropna() z określonymi kolumnami


Możesz użyć funkcji dropna() z argumentem subset , aby usunąć wiersze z pandy DataFrame, które zawierają brakujące wartości w określonych kolumnach.

Oto najczęstsze sposoby wykorzystania tej funkcji w praktyce:

Metoda 1: Usuń wiersze z brakującymi wartościami w określonej kolumnie

 df. dropna (subset = [' column1 '], inplace= True )

Metoda 2: Usuń wiersze z brakującymi wartościami w jednej z kilku określonych kolumn

 df. dropna (subset = [' column1 ', ' column2 ', ' column3 '], inplace= True )

Poniższe przykłady pokazują, jak w praktyce używać każdej metody z następującą ramką DataFrame pand:

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, np.nan, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, np.nan, np.nan, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, np.nan]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 18.0 5.0 11.0
1 B NaN NaN 8.0
2 C 19.0 NaN 10.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0
6G 20.0 9.0 9.0
7H 28.0 4.0 NaN

Przykład 1: Usuń wiersze z brakującymi wartościami w określonej kolumnie

Aby usunąć wiersze z brakującymi wartościami w kolumnie „pomocy” możemy zastosować następującą składnię:

 #drop rows with missing values in 'assists' column
df. dropna (subset = [' assists '], inplace= True )

#view updated DataFrame
print (df)

  team points assists rebounds
0 A 18.0 5.0 11.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0
6G 20.0 9.0 9.0
7H 28.0 4.0 NaN

Zwróć uwagę, że oba wiersze z brakującymi wartościami w kolumnie „Assists” zostały usunięte z DataFrame.

Należy również pamiętać, że ostatni wiersz ramki DataFrame jest zachowywany, nawet jeśli zawiera brakującą wartość, ponieważ brakującej wartości nie ma w kolumnie „pomoc”.

Przykład 2: Usuń wiersze z brakującymi wartościami w jednej z kilku określonych kolumn

Aby usunąć wiersze z brakującymi wartościami w kolumnach „punkty” lub „odbicia” możemy zastosować następującą składnię:

 #drop rows with missing values in 'points' or 'rebounds' column
df. dropna (subset = [' points ', ' rebounds '], inplace= True )

#view updated DataFrame
print (df)

  team points assists rebounds
0 A 18.0 5.0 11.0
2 C 19.0 NaN 10.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0
6G 20.0 9.0 9.0

Należy pamiętać, że dwa wiersze z brakującymi wartościami w kolumnach „punkty” lub „odbicia” zostały usunięte z DataFrame.

Uwaga : pełną dokumentację funkcji pandy dropna() można znaleźć tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w pandach:

Pandy: Jak zresetować indeks po użyciu dropna()
Pandy: Jak usunąć kolumny z wartościami NaN
Pandy: Jak usuwać wiersze na podstawie wielu warunków

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *