google colaboratoryを用いて、データ分析をしています。
その過程でカテゴリカル変数を数値に変換したいのですがエラーが出てしまい困っております。。
具体的には '北'、'南'、'東'、'西' といった方角(欠損値含む)を、python の LabelEncoder を用いて変換しようと思っています。
変換したいデータ
python3
1>> train['direction'] 2 30 南東 41 NaN 52 南 63 南 74 南 8 ... 996 南 1097 西 1198 南 1299 南 13100 南東 14Name: direction, Length: 101, dtype: object
コード
python3
1from sklearn.preprocessing import LabelEncoder 2le = LabelEncoder() 3le.fit(train['direction']) 4train['direction'] = le.transform(train['direction'])
出るエラー
python3
1--------------------------------------------------------------------------- 2TypeError Traceback (most recent call last) 3/usr/local/lib/python3.6/dist-packages/sklearn/preprocessing/label.py in _encode(values, uniques, encode) 4 104 try: 5--> 105 res = _encode_python(values, uniques, encode) 6 106 except TypeError: 7 83 frames 9TypeError: '<' not supported between instances of 'str' and 'float' 10 11During handling of the above exception, another exception occurred: 12 13TypeError Traceback (most recent call last) 14/usr/local/lib/python3.6/dist-packages/sklearn/preprocessing/label.py in _encode(values, uniques, encode) 15 105 res = _encode_python(values, uniques, encode) 16 106 except TypeError: 17--> 107 raise TypeError("argument must be a string or number") 18 108 return res 19 109 else: 20 21TypeError: argument must be a string or number
お力を貸していただけるとありがたいです。よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/01 08:24