我必须交付一个机器学习项目,我收到了一个名为tester.py
的文件。在另一个文件中编写完代码后,我必须运行 tester.py 才能查看结果,但是出现错误:TypeError: 'StratifiedShuffleSplit' object is not iterable
我在另一个主题和网站上研究了这个错误,解决方案总是相同的:使用sklearn.model_selection导入 GridSearchCV。我从一开始就在这样做,但文件 tester.py 运行。
出现问题的 tester.py 代码部分是:
def main():
### load up student's classifier, dataset, and feature_list
clf, dataset, feature_list = load_classifier_and_data()
### Run testing script
test_classifier(clf, dataset, feature_list)
if __name__ == '__main__':
main()
我自己的代码工作正常。
有什么帮助吗?
尝试更改以下 tester.py 行当前版本的StratifiedShuffleSplit的工作方式与开发 tester.py 时的预期不同。
[..]
from sklearn.model_selection import StratifiedShuffleSplit
[..]
#cv = StratifiedShuffleSplit(labels, folds, random_state = 42)
cv = StratifiedShuffleSplit(n_splits=folds, random_state=42)
[..]
#for train_idx, test_idx in cv:
for train_idx, test_idx in cv.split(features, labels):
[..]
我希望你觉得它有用