Python 如何在分为训练、验证和测试的数据集上使用SMOTE
我创建了虚拟变量,并编写了以下代码:Python 如何在分为训练、验证和测试的数据集上使用SMOTE,python,Python,我创建了虚拟变量,并编写了以下代码: from imblearn.over_sampling import SMOTE from collections import Counter counter = Counter(y_train) print('before',counter) # Oversampling the train dataset using SMOTE smt = SMOTE() #X_train, y_train = smt.fit
from imblearn.over_sampling import SMOTE
from collections import Counter
counter = Counter(y_train)
print('before',counter)
# Oversampling the train dataset using SMOTE
smt = SMOTE()
#X_train, y_train = smt.fit_resample(X_train,y_train)
X_train_sm, y_train_sm = smt.fit_resample(X_train, y_train)
counter = Counter(y_train_sm)
print('After', counter)
我得到了错误信息:
ValueError Traceback (most recent call last)
<ipython-input-76-b9dbb8e1c560> in <module>
8 smt = SMOTE()
9 #X_train, y_train = smt.fit_resample(X_train,y_train)
---> 10 X_train_sm, y_train_sm = smt.fit_resample(X_train, y_train)
11
12 counter = Counter(y_train_sm)
ValueError: could not convert string to float: 'M'
ValueError回溯(最近一次调用)
在里面
8 smt=SMOT()
9#X#u列,y#u列=smt.拟合重采样(X#u列,y#u列)
--->10 X\u列\u sm,y\u列\u sm=smt.拟合重采样(X\u列,y\u列)
11
12计数器=计数器(y\U列\U sm)
ValueError:无法将字符串转换为浮点:“M”
有人能帮我找出问题所在吗