【毎日Python】Pythonでデータフレームの欠損値を置換する方法|fillna

fillna
毎日Python/こつこつPython
import pandas as pd
import numpy as np
df = pd.DataFrame({'col1': [1, np.nan, 7, 10],
                   'col2': [np.nan, 3, 8, 11],
                   'col3': [3, 6, np.nan, 12]},
                  index=['idx1', 'idx2', 'idx3', 'idx4'])
df

データフレームにある欠損値を置き換える方法です。
使用するのは、pandasのfillnaメソッドです。
このような、欠損値のあるデータフレームを作成します。

df.fillna(0)

fillnaの引数に、欠損値を置き換えたい値で指定します。
欠損値を0に置き換えてみましょう。
実行します。
欠損値が0に置き換わりました。

df.fillna(df.mean())

平均値で置き換えてみましょう。
実行します。

平均値で置き換わりました。

df.fillna(df.mean(), inplace=True)
df

元のデータフレームはそのままなので、置き換えたい場合は引数inplaceにTrueを渡します。

関連メソッド

【毎日Python】Pythonでデータフレームの条件に応じて値を変更する方法|mask,where

【毎日Python】Pythonでデータフレームの欠損値を確認する方法|isnull