关于这个主题有很多问题和答案,但我无法解决我的问题。
我正在尝试使用 imblearn 的 ADASYN 模型来平衡我的数据集。
到目前为止,这是我的代码:
df = pd.read_csv("data/"+filename, nrows=1000)
df.replace([np.inf, -np.inf], np.nan, inplace=True)
df_imputed = df.fillna(df.mean())
X = df_imputed.drop(['target'], axis=1)
y = df_imputed.target
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
from imblearn.over_sampling import ADASYN
ada = ADASYN()
X_resampled, y_resampled = ada.fit_sample(X, y)
但我收到一个错误:
ValueError: Input contains NaN, infinity or a value too large for dtype('float64').
在线上
X_resampled, y_resampled = ada.fit_sample(X, y)
这里有几个问题:
- 您如何解决此问题?这意味着您如何识别导致此问题的数据。我的数据集有近 2300 多个特征列。
- 你如何解决它?
感谢您的时间!