我正在这个网站上运行笔记本https://github.com/vsmolyakov/experiments_with_python/blob/master/chp01/ensemble_methods.ipynb用python练习ensemble方法,在python 3中运行这部分代码时出现错误:
plt.figure()
(_, caps, _) = plt.errorbar(num_est, bg_clf_cv_mean, yerr=bg_clf_cv_std, c='blue', fmt='-o', capsize=5)
for cap in caps:
cap.set_markeredgewidth(1)
plt.ylabel('Accuracy'); plt.xlabel('Ensemble Size'); plt.title('Bagging Tree Ensemble');
plt.show()
错误是“matplotlib 不支持生成器作为输入”
解决办法是什么?
此致
在那个例子中
有一条线num_est = map(int, np.linspace(1,100,20))
。这会在 python 2.7 中生成一个列表。但在 python 3 中它只是一个生成器。无论如何,地图很奇怪,所以我建议将该行替换为
num_est = np.linspace(1,100,20).astype(int)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)