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


次の基本構文を使用して、NumPy で NaN 値をゼロに置き換えることができます。

 my_array[np. isnan (my_array)] = 0

この構文は行列と配列の両方で機能します。

次の例は、この構文を実際に使用する方法を示しています。

例 1: NumPy 配列内の NaN 値をゼロに置き換える

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

 import numpy as np

#create array of data
my_array = np. array ([4, np.nan, 6, np.nan, 10, 11, 14, 19, 22])

#replace nan values with zero in array
my_array[np. isnan (my_array)] = 0

#view updated array
print (my_array)

[4.0.6.0.10.11.14.19.22.]

元のテーブルの両方の NaN 値がゼロに置き換えられていることに注意してください。

例 2: NumPy 行列の NaN 値をゼロに置き換える

次の NumPy 行列があるとします。

 import numpy as np

#create NumPy matrix
my_matrix = np. matrix ( np.array ([np.nan,4,3,np.nan,8,12]). reshape ((3,2)))

#view NumPy matrix
print (my_matrix)

[[nah 4.]
 [ 3. nah]
 [8.12.]]

次のコードを使用して、NumPy 行列内のすべての NaN 値をゼロに置き換えることができます。

 #replace nan values with zero in matrix
my_matrix[np. isnan (my_matrix)] = 0

#view updated array
print (my_matrix)

[[ 0. 4.]
 [ 30.]
 [8.12.]]

元の行列の両方の NaN 値がゼロに置き換えられていることに注意してください。

関連: NumPy 配列から NaN 値を削除する方法

追加リソース

次のチュートリアルでは、NumPy で他の一般的なタスクを実行する方法について説明します。

NumPy 配列に値を入力する方法
NumPy配列から特定の要素を削除する方法
NumPy配列内の要素を置換する方法
NumPy配列から特定の行を取得する方法

コメントを追加する

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