尝试为 RandomOverSampler 导入 imblearn.over_sampling 时出现导入错误。我相信问题不在于我的代码,而在于库冲突,但我不确定。
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from sklearn.preprocessing import StandardScaler #actually scikit-learn
from imblearn.over_sampling import RandomOverSampler
使用 StandardScaler 和 RandomOverSampler 的代码:
def scale_dataset(dataframe, oversample=False):
X = dataframe[dataframe.columns[:-1]].values
Y = dataframe[dataframe.columns[-1]].values
scaler = StandardScaler()
X = scaler.fit_transform(X)
if oversample:
ros = RandomOverSampler()
X, Y = ros.fit_resample(X,Y)
data = np.hstack((X, np.reshape(Y, (-1, 1))))
return data, X, Y
print(len(train[train["class"]==1]))
print(len(train[train["class"]==0]))
train, X_train, Y_train = scale_dataset(train, True)
我尝试完全导入sklearn,卸载并重新安装scipi和sklearn(作为scikit-learn),安装Tensorflow。 我确实安装了 numpy、scipy、pandas 和其他依赖库。
您可以尝试以下特定版本,因为它们有效
pip install scikit-learn==0.24.2 imbalanced-learn==0.8.0