预测上海疫情将在五月底结束
上海这次疫情导致很多人只能居家办公,也许很多人和我一样,早上一起来就打开手机看昨日上海新增病例情况,一天天盼望着,什么时候能低于1000?什么时候能清零?什么时候能上班?
今天我就从统计过往病例开始,通过MATLAB,使用两种方法处理预测上海疫情走势。
首先,根据网上公开数据统计3/1-5/1病例情况。
疫情开始时间: 3月1日,已经整整两个月了,可能很多人也不清楚这个时间点,如果从居家办工来看,也有1个月了。
将每日累积的病例(新增+无症状-无症状转确诊)做成数据图
使用MATLAB绘图功能,增加坐标和化线,调整刻度尺
第一种方法:看图估计法
顾名思义,这种方法就是看图大致对下,图中有三条水平线,分别是新增1000,新增10000和新增20000的辨识线。结合数据表格,可以确定大约在第34天和第59天达到10000病例,中间值为46=(34+59)/2;大约在第34天和第59天达到10000病例,中间值为46=(37+55)/2;
预测1:第71天左右时,也就是5月10日左右,新增病例低于1000
计算过程,最大值为46天,新增1000的时间为第21天,46-21+46=71天
预测2:第92天左右时,也就是5月31日左右,无新增病例
计算过程,最大值46天的2倍
第二种方法:高斯正态分布法
如果选用一高斯拟合的话,f=a*exp(-((x-b)/c)^2),使用Curve Fitting tool,加载数据Time,Case1,数据是提前在工作空间加载上去的,选用“Gaussian”,效果是这样的,
R值=0.9591,a=25070,b=45.49,c=13.61
可以发现拟合效果并不好,部分数据点严重偏离。
为了减小单日增加的波动影响,将每日新增数据搞成7日均值,重新选用一、二和三高斯拟合发现,三高斯效果改善明显。
一高斯拟合
二高斯拟合
三高斯拟合
R值=0.9995,
a1=7721;b1=40.5;c1=5.723;a2=2461;b2=54.44;c2=3.574;a3=19870;
b3=46.77;c3=14.62;
选用三高斯线性之后,带入公式中,预测接下来日期的疫情数据,
预测1:第72天左右时,也就是5月11日左右,新增病例低于1000
预测2:第92天左右时,也就是5月31日左右,无新增病例
总结上述两种估算方法,可以先预估第一个时间节点,在5月10左右,新增病例低于1000,需要强调的是,新增病例=确诊+无症状-无症状转确诊,接下来,也会对照实际情况再做分析预测,不定期更新到疫情结束为止。