Pandas: cara mengisi nilai nan dengan nilai dari kolom lain


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

 df[' col1 '] = df[' col1 ']. fillna (df[' col2 '])

Sintaks khusus ini akan menggantikan semua nilai NaN di col1 dengan nilai yang sesuai di col2 .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Ganti nilai yang hilang dengan kolom lain

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 ({' team1 ': ['Mavs', np.nan, 'Nets', 'Hawks', np.nan, 'Jazz'],
                   ' team2 ': ['Spurs', 'Lakers', 'Kings', 'Celtics', 'Heat', 'Magic']})

#view DataFrame
df

        team1 team2
0 Mavs Spurs
1 NaN Lakers
2 Nets Kings
3 Hawks Celtics
4 NaN Heat
5 Jazz Magic

Perhatikan ada dua nilai NaN di kolom team1 .

Kita bisa menggunakan fungsi fillna() untuk mengisi nilai NaN di kolom team1 dengan nilai yang sesuai di kolom team2 :

 #fill NaNs in team1 column with corresponding values in team2 column
df[' team1 '] = df[' team1 ']. fillna (df[' team2 '])

#view updated DataFrame
df

        team1 team2
0 Mavs Spurs
1 Lakers Lakers
2 Nets Kings
3 Hawks Celtics
4 Heat Heat
5 Jazz Magic

Perhatikan bahwa dua nilai NaN di kolom team1 telah diganti dengan nilai yang sesuai di kolom team2 .

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 *