Pandas: cara mengisi nilai nan dengan mode


Anda dapat menggunakan sintaks berikut untuk mengganti nilai NaN di kolom pandas DataFrame dengan nilai mode kolom:

 df[' col1 '] = df[' col1 ']. fillna (df[' col1 ']. mode ()[0])

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Ganti nilai yang hilang dengan Mode di Pandas

Mari kita asumsikan kita memiliki pandas DataFrame berikut dengan beberapa nilai yang hilang:

 import numpy as np
import pandas as pd

#create DataFrame with some NaN values
df = pd. DataFrame ({' rating ': [np.nan, 85, np.nan, 88, 94, 90, 75, 75, 87, 86],
                   ' points ': [25, np.nan, 14, 16, 27, 20, 12, 15, 14, 19],
                   ' assists ': [5, 7, 7, np.nan, 5, 7, 6, 9, 9, 7],
                   ' rebounds ': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]})

#view DataFrame
df

        rating points assists rebounds
0 NaN 25.0 5.0 11
1 85.0 NaN 7.0 8
2 NaN 14.0 7.0 10
3 88.0 16.0 NaN 6
4 94.0 27.0 5.0 6
5 90.0 20.0 7.0 9
6 75.0 12.0 6.0 6
7 75.0 15.0 9.0 10
8 87.0 14.0 9.0 10
9 86.0 19.0 7.0 7

Kita dapat menggunakan fungsi fillna() untuk mengisi nilai NaN pada kolom rating dengan nilai mode kolom rating :

 #fill NaNs with column mode in 'rating' column
df[' rating '] = df[' rating ']. fillna (df[' rating ']. mode ()[0])

#view updated DataFrame
df

	rating points assists rebounds
0 75.0 25.0 5.0 11
1 85.0 NaN 7.0 8
2 75.0 14.0 7.0 10
3 88.0 16.0 NaN 6
4 94.0 27.0 5.0 6
5 90.0 20.0 7.0 9
6 75.0 12.0 6.0 6
7 75.0 15.0 9.0 10
8 87.0 14.0 9.0 10
9 86.0 19.0 7.0 7

Nilai mode pada kolom rating adalah 75 , sehingga setiap nilai NaN pada kolom rating diisi dengan nilai tersebut.

Catatan : Anda dapat menemukan dokumentasi online lengkap untuk fungsi fillna() di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di panda:

Cara menghitung nilai yang hilang di panda
Cara menghapus baris dengan nilai NaN di Pandas
Cara menghapus baris yang berisi nilai tertentu di Pandas

Tambahkan komentar

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