声明
(1)预测基于官方公布数据,结果仅供参考,之后的数据,还是以官方为准;
(2)本文不作任何建议,更无意制造恐慌、造谣,仅表示一个简单的数据分析结果;
(3)目前,新型肺炎处于上升趋势,增长速度较快。随着后续管控防治手段的提升和药物的研制,病情发展曲线完全可能大不相同,本文出现过拟合现象纯属正常;
(4)现在要做的事情是:别出门!别出门!别出门!
前言
本学期学习了《计算方法》课程,讲到了多项式拟合相关内容。因为是个选修课所以期末水过去了。
寒假期间新型冠状病毒肺炎来势汹汹,宅在家里不出门的同时想起来当时上课的一些内容可以用来做一下预测,所以写了这篇文章,发表一点自己的观点,本文数据纯属预测,无论预测是否存在较大误差,都不要相信,一切以官方为准。
数据获取
数据其实可以通过直接访问网页链接来解析获取,这里的话放假懒得写前端,我为了省事直接手动输入数组了:
(数据截止到2月4日0时,公布的2月3日00:00——24:00前一日的数据)
数据处理
在后续绘图的过程中,我将横坐标改为日期的形式,用来表示每天的病例人数,用到了matlab中的日历类型。
首先,使用datetime函数,指定开始日期:
t1=datetime(2020,1,18);
由于绘图时横坐标需要精确到每天,故将每天的datetime类型通过for循环存入数组:
for i=1:length(x1)
data1=[data1,t1+caldays(i)];
% caldays自增,获取数组内的日期格式数据,便于绘图,下同
end
利用caldays函数进行日期的加减运算。
这样,使用第二段代码中data1这个数组作为横坐标就能绘制日期横坐标的图了。
模型建立——多项式拟合
1、多项式拟合原理和本文说明
多项式拟合是用一个多项式展开去拟合包含数个分析格点的一小块分析区域中的所有观测点,得到观测数据的客观分析场。展开系数用最小二乘拟合确定。
多项式拟合,将一组数据尽可能的映射到一个多项式函数上,反映这一组数据之间的一个函数关系。故可以使用多项式拟合方法对于数据的未来走向进行一定程度上的预测。