到目前为止,我的代码如下运行 SMOTENC。
from imblearn.over_sampling import SMOTENC
smt = SMOTENC(random_state=seed, categorical_features=[10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53], ratio=1.0, n_jobs = -1)
# n_jobs = The number of threads to open if possible. ``-1`` means using all processors.
# default K=5
X_res, y_res = smt.fit_sample(X_tra, y_tra)
这里的问题是我正在阅读有关 SMOTE 的内容,并且由于它使用具有欧几里德距离的 KNN 算法,因此数据应该在调用之前进行缩放SMOTENC()
。
如果数据集的前 10 个特征为整数,其余为分类特征,在这种情况下我应该如何进行缩放过程?