41 NaN
45 NaN
51 NaN
92 NaN
100 NaN
...
というNaNのみを抽出したcolumnに数値データ(配列)を代入したいのですが
python
1 df[df['pH'].isnull()]["pH"].fillna(pH_pred)
で代入しようとしたところ
python
1TypeError: "value" parameter must be a scalar, dict or Series, but you passed a "ndarray"
というエラーが吐き出されます。
df.head() fixed acidity volatile acidity citric acid residual sugar chlorides free sulfur dioxide total sulfur dioxide density pH sulphates alcohol quality 0 9.8 0.63 0.24 2.4 0.078 6.1 32.6 0.9997 3.08 0.57 9.4 5.1 1 6.1 0.34 0.25 1.8 0.084 4.0 28.0 0.9941 3.36 0.44 10.2 4.8 2 7.1 0.43 0.17 1.8 0.083 27.2 51.3 0.9941 3.51 0.63 10.4 5.5 3 8.6 0.47 0.27 1.9 0.058 17.5 37.6 0.9907 3.16 0.85 11.1 6.1 4 6.9 0.41 0.30 8.9 0.084 25.9 45.4 0.9861 3.35 0.64 10.2 5.6
pH_predの中身
python
1 2output;array([3.34, 3.40, 2.97...
python
1df[df['pH'].isnull()]["pH"]=pH_pred
元々上記のコートで予測値を代入しようとして、エラーを吐き出さないのですが、実際は代入されておらずfillna()で代入を試みました。
最終的には
python
1df[df['pH'].isnull()]["pH"]
の部分が
(例)
41 3.34
45 3.40
51 2.97
...
と出力されるようにしたいです。
NaNへ配列データを代入する場合どうしたらよいのでしょうか?
インデックスを1から順にしないといけないのでしょうか?
また
python
1df[df['pH'].isnull()]["pH"]=pH_pred
で予測値を代入しようとして、エラーが出ないのに代入されていないのもわかりません。
回答1件
あなたの回答
tips
プレビュー