Pandas: cara mengganti nan dengan none


Anda dapat menggunakan sintaks dasar berikut untuk mengganti nilai NaN dengan None di pandas DataFrame:

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

Fungsi ini sangat berguna ketika Anda perlu mengekspor pandas DataFrame ke database yang menggunakan None untuk mewakili nilai yang hilang, bukan NaN .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: ganti NaN dengan None di Pandas

Misalkan kita memiliki panda DataFrame berikut:

 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

Perhatikan bahwa ada beberapa nilai NaN di DataFrame.

Untuk mengganti setiap nilai NaN dengan None , kita dapat menggunakan sintaks berikut:

 #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

Perhatikan bahwa setiap NaN di setiap kolom DataFrame telah diganti dengan None .

Perhatikan bahwa jika Anda hanya ingin mengganti nilai NaN dengan Tidak Ada di kolom tertentu, Anda dapat menggunakan sintaks berikut:

 #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

Perhatikan bahwa nilai NaN telah diubah menjadi Tidak Ada di kolom “B” saja.

Terkait: Cara mengganti nilai NaN dengan nol di Pandas

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di panda:

Bagaimana cara mengganti nilai tertentu di Pandas
Cara memfilter Pandas DataFrame berdasarkan nilai kolom
Cara mengisi nilai NA untuk beberapa kolom di Pandas

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *