问题描述
我使用 SMOTE 是因为我的数据集不平衡,但我收到了如下所述的错误消息。我在这个论坛上看到过一篇关于同一主题的帖子。但是,在那篇文章中,建议发生此错误的原因是列名重复。我检查了我的数据集并且没有重复的列名,但我仍然收到此错误。我的数据集有分类变量,并且都已转换为 1 和 0。
val (leftRange,rightRange) = pairs.unzip()
错误信息如下:
sm = SMOTE(random_state = 2)
X_train_res,y_train_res = sm.fit_resample(X_train,y_train)
解决方法
我使用以下方法解决了错误 - 您可能会也可能不会使用 ravel()。
sm = SMOTE(random_state = 2) X_train_res,y_train_res = sm.fit_resample(X_train.values,y_train.ravel())