Как исправить ошибку атрибута Python: объект 'SMOTE' не имеет атрибута 'fit_sample'

Здравствуйте: я пытаюсь запустить следующий код:

os = SMOTE(random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
columns = X_train.columns
os_data_X,os_data_y=os.fit_sample(X_train, y_train)

Но получите сообщение об ошибке, описанное выше - AttributeError: объект 'SMOTE' не имеет атрибута 'fit_sample'

Я использую версию 0.8.0 imbalanced-learn и версию 0.24.1 scikit-learn.

Спасибо за любые предложения, которые вы можете предоставить. У меня несбалансированные классы, и я пытаюсь скорректировать выборку.


person JWeds    schedule 14.04.2021    source источник


Ответы (1)


fit_sample был переименован в fit_resample в v0.4.

Заменить:

os_data_X, os_data_y = os.fit_resample(X_train, y_train)

См. Документацию здесь: https://imbalanced-learn.org/stable/references/generated/imblearn.over_sampling.SMOTE.html

person Alexander L. Hayes    schedule 14.04.2021