如何解决如何在Python中使用Random Forest Regressor预测未来的数字
我正在尝试使用RandomForestRegressor预测将来的冠状病毒病例数,但是当我尝试执行该错误时会出现这种错误:
ValueError Traceback (most recent call last)
<ipython-input-181-c9a9a8208098> in <module>()
1 test_data = np.arange(260,367).reshape(-1,1)
----> 2 rf_regressor_fit_future = rf_regressor.fit(test_data,target)
3 forecast_rf_future = rf_regressor_fit_future.predict(test_data)
10 frames
/usr/local/lib/python3.6/dist-packages/sklearn/tree/_classes.py in fit(self,X,y,sample_weight,check_input,X_idx_sorted)
263 if len(y) != n_samples:
264 raise ValueError("Number of labels=%d does not match "
--> 265 "number of samples=%d" % (len(y),n_samples))
266 if not 0 <= self.min_weight_fraction_leaf <= 0.5:
267 raise ValueError("min_weight_fraction_leaf must in [0,0.5]")
ValueError: Number of labels=259 does not match number of samples=107
这是我用来创建未来日子并使用示例进行预测的代码:
test_data = np.arange(260,1)
rf_regressor_fit_future = rf_regressor.fit(test_data,target)
forecast_rf_future = rf_regressor_fit_future.predict(test_data)
数据集只有259天和样本,并且预测实际数据运行良好。但是未来的日子我会遇到麻烦。我应该如何通过匹配样本数量来解决此错误?任何建议都将受到高度赞赏。
解决方法
几乎可以肯定,随机森林不适合预测未来的冠状病毒病例。它可以预测的最大病例数是训练数据集中的最大病例数。因此,对于预测指数增长的病例数,该值几乎为零。请使用更合适的方法。
,随机森林回归不适用于此类任务。我做了一个类似的项目,但是我使用了多项式回归。如果您愿意,可以在这里查看:
https://github.com/sanyogthescholar/covid_19
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。