pandasのDataFrameで、trainsセットとtestセットをまとめてラベルエンコーディングしようとすると次のエラーが出ます。
↓↓
y contains previously unseen labels: [16, 17]
コードは以下の通りです。
Pyhton
1from sklearn.preprocessing import LabelEncoder 2 3for c in cat_cols: 4 le = LabelEncoder() 5 le.fit(train_x[c]) 6 train_x[c] = le.transform(train_x[c]) 7 test_x[c] = le.transform(test_x[c])
trainセットのエンコードはできますが、testセットで躓きます。
train,test両方のデータセットのカラムは全く同じものを持っていますので、なぜエラーになるのかわかりません。
testセット単独で、testセットにfitしたインスタンスでのエンコードはできます。
しかし、上記の形になるとうまくいきません.
正しくは、trainセットでfitしたインスタンスを使わないといけないと思いますし、手詰まりになってしまいました。
dataframeもしくは複数カラムを、まとめてLabelEncoder()に投げると上記のエラーが出るという記事をネット上で見かけましたが、どうしても解決できませんでした。
このエラーは一般的なもので、定型の回避方法あるのでしょうか。
回答1件
あなたの回答
tips
プレビュー