Pandy: jak zamienić nan na brak


Możesz użyć następującej podstawowej składni, aby zastąpić wartości NaN wartościami None w ramce DataFrame pandy:

 df = df. replace (np. nan , None )

Ta funkcja jest szczególnie przydatna, gdy trzeba wyeksportować ramkę DataFrame pandy do bazy danych, która zamiast NaN używa None do reprezentowania brakujących wartości.

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: zamień NaN na None w Pandach

Załóżmy, że mamy następującą ramkę DataFrame pand:

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' A ': [5, 6, 8, np.nan, 4, 15, 13],
                   ' B ': [np.nan, 12, np.nan, 10, 23, 6, 4],
                   ' C ': [2, 7, 6, 3, 2, 4, np.nan],
                   ' D ': [5, np.nan, 6, 15, 1, np.nan, 4]})

#view DataFrame
print (df)

      ABCD
0 5.0 NaN 2.0 5.0
1 6.0 12.0 7.0 NaN
2 8.0 NaN 6.0 6.0
3 NaN 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 NaN
6 13.0 4.0 NaN 4.0

Należy pamiętać, że w ramce DataFrame znajduje się wiele wartości NaN .

Aby zastąpić każdą wartość NaN wartością None , możemy zastosować następującą składnię:

 #replace all NaN values with None
df = df. replace (np. nan , None )

#view updated DataFrame
print (df)

      ABCD
0 5.0 None 2.0 5.0
1 6.0 12.0 7.0 None
2 8.0 None 6.0 6.0
3 None 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 None
6 13.0 4.0 None 4.0

Należy zauważyć, że każdy NaN w każdej kolumnie DataFrame został zastąpiony przez None .

Pamiętaj, że jeśli chcesz w danej kolumnie zastąpić tylko wartości NaN wartościami None , możesz zastosować następującą składnię:

 #replace NaN values with None in column 'B' only
df[' B '] = df[' B ']. replace (np. nan , None )

#view updated DataFrame
print (df)

      ABCD
0 5.0 None 2.0 5.0
1 6.0 12.0 7.0 NaN
2 8.0 None 6.0 6.0
3 NaN 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 NaN
6 13.0 4.0 NaN 4.0

Należy pamiętać, że wartości NaN zostały zmienione na Brak tylko w kolumnie „B”.

Powiązane: Jak zamienić wartości NaN na zero w Pandach

Dodatkowe zasoby

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

Jak zastąpić określone wartości w Pandach
Jak filtrować ramkę danych Pandas według wartości kolumn
Jak wypełnić wartości NA dla wielu kolumn w Pandach

Dodaj komentarz

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