< 返回技术文档列表

怎么用Python进行预测疫情

发布时间:2021-11-07 00:16:07⊙投诉举报

这篇文章主要介绍了怎么用Python进行预测疫情,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

1.准备工作

编程环境:anaconda下Spyder。

数据来源:整理自国家卫生健康委员会官网。

需要安装的依赖库有:scipy。scipy是一个用于数学、科学等领域的开源科学计算库,其建立在Numpy之上,可用于处理积分、优化、常微分方程数值解的求解、信号处理等问题。本文主要用于函数拟合。

2.算法流程

1).理论解释

如何预测新冠肺炎的累计确诊人数,目前常用的方法有基于SIR的传染病模型,以及基于Logistic方程的方法等。SIR模型实现起来相对较复杂,本文将基于一个更简单的模型&mdash;&mdash;利用Logistic方程进行预测。

Logistic方程可用于描述,物种增长模型,当一个物种迁入到一个新生态系统中后,若该物种在非理想生态系统(存在天敌,食物、空间等资源紧缺等)中存在生存阻力,则物种数量大致呈现S型增长。开始产生一个缓慢的增长期,慢慢的呈现指数型爆发,后期随着环境阻力的变化,逐渐趋于稳定。

怎么用Python进行预测疫情

用函数可以表示为:

参数的含义如下:

:表示随着时间的变化,环境中物种的数量。

:表示环境中物种能达到的极限值。

:表示环境开始时期,物种的数量。

:表示增长速率,在图形中展现的就是曲线的陡峭程度,越大,物种数量越快逼近N值。

:表示时间。

2).程序实现

程序中,首先定义待拟合函数,然后获取“累计确诊”人数数据,并利用curve_fit()函数进行参数拟合,得出需要拟合的参数。最后将拟合曲线和实际确诊人数在同一图中显示,直观观测出模型效果。

怎么用Python进行预测疫情

怎么用Python进行预测疫情

怎么用Python进行预测疫情

通过将1月20日至2月8日的数据进行Logistic方程拟合,在2月9-11日三天预测数据和实际数据较为吻合。但在2月12日,官方的数据突然激增,这让我们的模型失效。

怎么用Python进行预测疫情

在重新调整训练数据,我们选择将1月20日至2月26日的数据作为训练数据,2月27-28日数据作为对照数据,可得到新的拟合曲线,预测值和实际值都相对较为吻合。

怎么用Python进行预测疫情

感谢你能够认真阅读完这篇文章,希望小编分享的“怎么用Python进行预测疫情”这篇文章对大家有帮助,同时也希望大家多多支持血鸟云,关注血鸟云行业资讯频道,更多相关知识等着你来学习!


/template/Home/Zkeys/PC/Static