LabelEncoder文字データを数値に変換

1036 ワード

データを見ると、次のような文字セルが表示されます.

これらのデータは、コンピュータが認識できないため、数字に変える必要があります.
その前に、どのユニットが文字で書かれているかを見てみましょう.
cat_cols = all_data2.columns[all_data2.dtypes == object]
cat_cols
どのカラムのデータがdtypes == object文字であるかを確認できます.
次のような例があります.

上記のユニットのデータが文字であることを確認できます.今文字を数字に変えましょう
ちなみに、ここで述べた文字を数字に変換するという意味は
すなわち、Animal TypeがCatであれば、0,Dog,1となり、このように符号化される.
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
for i in cat_cols:
    all_data2[i] = le.fit_transform(list(all_data2[i]))
all_data2
すべての文字ユニットに対してfit_transformをすればいいです.
そのパラメータで対応するセルを入れ、ここでlistに変換した理由は何でしょうか.
空の値を処理するためです.
処理というよりlistに変換すると、Nullが再認識され、nullの値はすべて同じ数字に変換されて処理される.
データにnullの値がない場合は、listを省略することができる.