Scikit learn 如何修复valueError:要解包的值太多(预计3个)

Scikit learn 如何修复valueError:要解包的值太多(预计3个),scikit-learn,Scikit Learn,我试图运行代码并获得错误太多值无法解包,如何解决该问题? 这是一段代码,看不到错误 parameter_grid = [{'n_estimators': [100], 'max_depth': [2, 4, 7, 12, 16]}, {'max_depth': [4], 'n_estimators': [25, 50, 100, 250]}] metrics = ['precision_weighted', 'recall_weighted'] for metric in metrics:

我试图运行代码并获得错误太多值无法解包,如何解决该问题? 这是一段代码,看不到错误

parameter_grid = [{'n_estimators': [100], 'max_depth': [2, 4, 7, 12, 16]}, {'max_depth': [4], 'n_estimators': [25, 50, 100, 250]}]

metrics = ['precision_weighted', 'recall_weighted']

for metric in metrics:
    print("\n##### searching optimal parameters for ", metric)
    classifier = GridSearchCV(ExtraTreesClassifier(random_state=0), parameter_grid, cv=5, scoring=metric)
    classifier.fit(X_train, y_train)

    print("\ngrid scores for the parameter grid:")
    for params, avg_score, _ in classifier.cv_results_:
        print(params, '-->', round(avg_score, 3))

cv\u results\u
是一个包含
GridSearchCV
结果的dict。它看起来像这样:

这意味着,如果您想访问它,您需要像访问Python中的字典一样访问它:

for key, value in classifier.cv_results_.items():
    # do something like print("{} ... {}".format(key, value))
错误基本上是这样的:您要求将包含太多值的内容解包到几个占位符/接收者中,这些占位符/接收者少于我们可以解包的内容