Pandasでnan値をゼロに置き換える方法


次のメソッドを使用して、pandas DataFrame 内の NaN 値をゼロに置き換えることができます。

方法 1: 列内の NaN 値をゼロに置き換える

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

方法 2: 複数の列の NaN 値をゼロに置き換える

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

方法 3: すべての列の NaN 値をゼロに置き換える

 df = df. fillna (0)

次の例は、次の pandas DataFrame でこれらの各メソッドを使用する方法を示しています。

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' points ': [25, np.nan, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, np.nan, 7, np.nan, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, np.nan, 9, np.nan]})

#view DataFrame
print (df)

   points assists rebounds
0 25.0 5.0 11.0
1 NaN NaN 8.0
2 15.0 7.0 10.0
3 14.0 NaN 6.0
4 19.0 12.0 6.0
5 23.0 9.0 NaN
6 25.0 9.0 9.0
7 29.0 4.0 NaN

方法 1: 列内の NaN 値をゼロに置き換える

次のコードは、「helps」列のみで NaN 値をゼロに置き換える方法を示しています。

 #replace NaN values with zero in 'assists' column
df[' assists '] = df[' assists ']. fillna (0)

#view updated DataFrame
print (df)

   points assists rebounds
0 25.0 5.0 11.0
1 NaN 0.0 8.0
2 15.0 7.0 10.0
3 14.0 0.0 6.0
4 19.0 12.0 6.0
5 23.0 9.0 NaN
6 25.0 9.0 9.0
7 29.0 4.0 NaN

「assists」列の NaN 値はゼロに置き換えられていますが、他のすべての列の NaN 値はまだ残っていることに注意してください。

方法 2: 複数の列の NaN 値をゼロに置き換える

次のコードは、「points」列と「assists」列の NaN 値をゼロに置き換える方法を示しています。

 #replace NaN values with zero in 'points' and 'assists' column
df[[' points ', ' assists ']] = df[[' points ', ' assists ']]. fillna (0)

#view updated DataFrame
print (df)

   points assists rebounds
0 25.0 5.0 11.0
1 0.0 0.0 8.0
2 15.0 7.0 10.0
3 14.0 0.0 6.0
4 19.0 12.0 6.0
5 23.0 9.0 NaN
6 25.0 9.0 9.0
7 29.0 4.0 NaN

方法 3: すべての列の NaN 値をゼロに置き換える

次のコードは、DataFrame の各列で NaN 値をゼロに置き換える方法を示しています。

 #replace NaN values with zero in all columns
df = df. fillna (0)

#view updated DataFrame
print (df)

   points assists rebounds
0 25.0 5.0 11.0
1 0.0 0.0 8.0
2 15.0 7.0 10.0
3 14.0 0.0 6.0
4 19.0 12.0 6.0
5 23.0 9.0 0.0
6 25.0 9.0 9.0
7 29.0 4.0 0.0

追加リソース

次のチュートリアルでは、パンダで他の一般的な操作を実行する方法を説明します。

Pandasで特定の値を置き換える方法
Pandas DataFrame を列値でフィルタリングする方法
Pandasの複数の列にNA値を入力する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です