我有一个 train_df[y]
列,类似于-
0 neutral or dissatisfied1 neutral or dissatisfied2 satisfied3 neutral or dissatisfied4 satisfied
我使用以下方法将其转换为独热编码-
y=np.array(pd.get_dummies(train_df[y],drop_first=True))
我得到了-
satisfied0 01 02 13 0
然后我对其运行了一个模型,以生成训练数据的预测,使用
y_pred = cross_val_predict(model, X, y,cv=KFold(n_splits=10))
y_pred-
0 01 02 13 1
现在我想将这个 y_pred 再次转换为分类格式。例如-
0 neutral or dissatisfied1 neutral or dissatisfied2 satisfied3 satisfied
回答:
我认为你可以而且应该在这里使用 LabelEncoder 而不是独热编码。你可以尝试以下方法:
le = LabelEncoder()y = le.fit_transform(train_df[y])# 训练你的模型并将预测结果存储到变量 'y_pred' 中y_pred = le.inverse_transform(y_pred)
这应该能给你所需的解决方案