Я получил ошибку «Найдены неизвестные категории [1] в столбце 3 во время преобразования», применяя GridSearch для разных преобразователей - PullRequest
0 голосов
/ 05 февраля 2020

Поскольку я новичок в Python У меня возникают трудности при попытке найти причину ошибки при запуске следующего кода:

numeric_transformer = Pipeline(steps=[
    ('imputer', KBinsDiscretizer(n_bins=3, encode='ordinal', strategy='quantile')),
    ('scaler', MinMaxScaler())])
categorical_transformer = Pipeline(steps=[
    ('imputer', SimpleImputer(strategy='most_frequent')),
    ('onehot', OneHotEncoder())])
preprocessor = ColumnTransformer(
    remainder = 'passthrough',
    transformers=[
        ('numeric', numeric_transformer, numerical),
        ('categorical', categorical_transformer, categorical)
])
clf = Pipeline(steps=[('preprocessor', preprocessor),
                      ('classifier', BernoulliNB())])
# clf.fit(X_tr, y_tr)
# print("Score: %.3f" % clf.score(X_ts, y_ts))

alph_a = np.logspace(-3, 1, 10)
param_grid = {
    'preprocessor__numeric__imputer__n_bins': list(range(2, 30)),
    'classifier__alpha': alph_a
}
grid_clf = GridSearchCV(clf,  param_grid, cv=10)
grid_clf.fit(X_tr, y_tr)'

Ошибка: ValueError: Найдены неизвестные категории [1] в колонка 3 во время трансформации Не могли бы вы дать совет, как ее решить? Заранее спасибо.

...