2019-nCov-SIRmodel icon indicating copy to clipboard operation
2019-nCov-SIRmodel copied to clipboard

新型肺炎数据爬取代码

Open island255 opened this issue 5 years ago • 8 comments

您好! 我阅读您的知乎及其GitHub上的代码,对您的这个项目十分感兴趣,请问可否上传爬取肺炎患者相关数据的代码? 谢谢!

island255 avatar Feb 05 '20 08:02 island255

您好,数据是直接从卫健委网站上获得的,手工编辑csv文件,没用代码爬。卫健委疫情数据网页: http://www.nhc.gov.cn/xcs/yqtb/list_gzbd.shtml

zwdnet avatar Feb 06 '20 04:02 zwdnet

好的,十分感谢!

island255 avatar Feb 06 '20 05:02 island255

caixin有个csv每天更新,也是按照卫建委数据。不过不知道为什么2月4日以后停止了。链接在这里 http://datanews.caixin.com/interactive/2020/iframe/pneumonia-new/data/data2.csv

pengpeter avatar Feb 06 '20 10:02 pengpeter

收到,十分感谢!

island255 avatar Feb 06 '20 11:02 island255

非常感谢您的模型,使我收获满满!不过有一些地方还是不明白,请问 SIR.py 中的 第98行:穷举法,找出与实际数据差的平方和最小的S0和beta值 这里是如何运行的呢,显示ValueError: operands could not be broadcast together with shapes (63,) (21,)

lemonskiller avatar Mar 14 '20 01:03 lemonskiller

ValueError: operands could not be broadcast together with shapes

您好,这是用预测数据跟实际数据进行对比,我一开始做的时候是用前21天的疫情数据来估算的,之后每天都更新数据,而这里还是用前21天的数据,所以数组大小就不一致了。 解决方法: 把第90行,error函数里的“err = (data["感染者"] - res)**2” 改成 "err = (data["感染者"].iloc[:21] - res)**2"就行了。最新的提交已经更改了。谢谢提醒!

zwdnet avatar Mar 22 '20 07:03 zwdnet

ValueError: operands could not be broadcast together with shapes

您好,这是用预测数据跟实际数据进行对比,我一开始做的时候是用前21天的疫情数据来估算的,之后每天都更新数据,而这里还是用前21天的数据,所以数组大小就不一致了。 解决方法: 把第90行,error函数里的“err = (data["感染者"] - res)**2” 改成 "err = (data["感染者"].iloc[:21] - res)**2"就行了。最新的提交已经更改了。谢谢提醒!

这里应该用err = (data["现有感染者"] - res)**2 更合适吧

Cprocc avatar Apr 04 '20 08:04 Cprocc

ValueError: operands could not be broadcast together with shapes

您好,这是用预测数据跟实际数据进行对比,我一开始做的时候是用前21天的疫情数据来估算的,之后每天都更新数据,而这里还是用前21天的数据,所以数组大小就不一致了。 解决方法: 把第90行,error函数里的“err = (data["感染者"] - res)**2” 改成 "err = (data["感染者"].iloc[:21] - res)**2"就行了。最新的提交已经更改了。谢谢提醒!

这里应该用err = (data["现有感染者"] - res)**2 更合适吧

模型算的是累计感染人数,我改了一下试试,结果模型计算结果与实际相差很大。要改成现有感染者,后面的res也要重新计算,减去退出人数才对了。

zwdnet avatar Apr 05 '20 06:04 zwdnet