我的数据如下所示,我需要对变量进行编码,但LabelEncoder并未对字符串进行编码
我的数据如下
Delivery_classFirst ClassSame DaySecond ClassStandard ClassX=filtered_df.iloc[:, 1]labelencoder_X = LabelEncoder()X.values[:,1] = labelencoder_X.fit_transform(X.values[:,1].astype(str))
即使运行了上述代码,字符串仍然保持不变。
请指教,我是XGBoost的新手
回答:
不要将结果赋值回X.values
。请使用X.iloc
:
from sklearn.preprocessing import LabelEncoderle = LabelEncoder()X.iloc[:, 1] = le.fit_transform(X.values[:, 1].astype(str))
输出:
Index Ship_Mode0 0 01 1 02 2 13 3 14 4 05 5 2