什么是传染病动力学?numpy和matplotlib用python实现传染病模型SI模型SIS模型SIR模型SEIR模型 什么是传染病动力学?最近,在报道疫情的众多新闻中,相信大家也看到过一些来预测新型冠状病毒会导致感染肺炎的人数。你一定好奇,这个人数要怎么预测呢?预测人数又有什么用呢? 事实上,从学科方向来说,这类研究属于传染病动力学,就是用数学模型去描述传染病在人群中传播的规律,从而预测患病人数,进而指导政府制定措施和政策去控制传染病的传播。
' ~6 R6 z5 v! x S+ }0 Q A这类研究最早可追溯到18世纪Daniel Bernoulli对天花的研究,而我们今天所要介绍的SIR模型是1927年Kermack与McKendrick在为了研究伦敦黑死病而提出的,是传染病动力学中最基础的模型。 介绍了传染病模型的背景信息,不知道现在你对传染病模型更有兴趣,还是执着地对python更有兴趣呢?不论哪种,这篇文章会满足你所有的好奇心。 numpy和matplotlib首先,安装一下这节课我们需要使用的两个python包,numpy和matplotlib。
8 D" Z9 y8 t; h- X- {, k$ ynumpy-是python进行科学和矩阵运算最常用的包。 用numpy建立一维数组,存储和计算每天传染病人数的数据。
+ |# d6 n1 @& }; E# Z9 D, }import numpy as np import matplotlib.pyplot as plt 用matplotlib绘制传染病人数随天数变化的曲线,给出模型预测人数变化的直观认识。 好啦,下面开始用python实现传染病模型吧。 用python实现传染病模型为了让大家能够更好地理解,我们先不直接说SIR模型,我们从最简单的开始。 SI模型首先想象这样一个场景,一个城市有 个人,假设没有人出生和死亡,忽然有一天有 个人感染了病毒成为了患者,如果每天每个患者能够有效传染 个人,那么第二天患病人数是多少呢?最简单的答案是: ,也就是说每天都会新增 个患者。那这样以来,在无限远的将来会有无穷多的人被感染,显然这是不合理的,那错在哪里?仔细思考,你一定发现了,已经患病的人就不能再被传染了,所以我们有必要把人群分为两类,易感者(S-susceptiable)和感染者(I-infective)(你猜的没错,这就是SIR中S和I的含义,R的含义之后介绍再讲)。为了之后方便计算我们记易感者和感染者在人群中的比例为 ,那么 。我们重新考虑上面的问题,顺便来个示意图: Image Name这样的话,每天新增的患者数为 ,也就是总传染人数乘以易感者所占的人群比例。
4 d: F$ X$ N$ ~( g( @0 R" z那么每天的感染者比例的增加量就是 。我们假设城市有一千万(N=10的7次方)人,每个患者每天接触感染每天0.8人(lamda=0.8),初始感染人数为45人(i0 = 45/N),我们来模拟70天(T=70)的情况。 # population* l& x1 O* C8 N. p6 f% ~9 k
N = 1e7& }# c6 l6 @- S8 ]6 l. E" s. z
# simuation Time / Day
2 B" U* k1 e' X* y8 h! P" c0 u2 F5 sT = 702 {; P# R$ W/ [* e
# susceptiable ratio `" [2 `2 g1 n
s = np.zeros([T])
, S; d+ Z. Y$ L+ q# infective ratio
: Q0 I$ t* U3 R1 J/ C. v9 Ri = np.zeros([T])
+ A1 A. s3 c( F6 ^8 ]' V% Y+ Q# contact rate; m2 ?' S& [! ]' I' _0 E
lamda = 0.8* @; m: r; C9 c1 |* e
1 a% E) A k: a* X* ^# initial infective people
. U: [" k1 \) a" f" A1 K9 Ii[0] = 45.0 / N
5 v0 ] G5 J* }8 U# Z: E% A# p) v6 b# D4 X" g; j$ w' J
for t in range(T-1):: H& k1 c& }7 F: t' o
i[t + 1] = i[t] + i[t] * lamda * (1.0 - i[t])' t' F) @1 q. t+ }9 P C7 L$ q! o
0 F" _) {/ D9 [
/ v0 d9 _% J0 _. P3 v$ x) l9 N5 t8 g! M- w$ g+ i
相信其他语句大家都明白,新知识是这两行:
5 S0 M) k* ]3 r& |) a7 c4 R n
3 D a0 }- i( L7 L2 |; i/ p
- u; K: W* l+ z$ js = np.zeros([T])& B' j) y* ?( L3 i5 J- u( W* W
i = np.zeros([T])- p% t0 u0 B7 E3 e5 t6 r! V
4 v& X; P6 ?/ [5 r这两句话的意思是一样的,就是利用numpy(已被我们重新命名为np)的函数(zeros())来建立一个所有元素都是零的数组,而给的参数决定了这个数组的维度。比如:# m% P S' S6 c7 m0 o7 U! {; U/ K
/ f2 K* Y8 I* C5 \$ @) c
a = np.zeros([2,3])
. L9 O/ A% f7 ?a
' g* X5 A4 e5 A9 K* k# {
$ f& } ^# J$ S: qarray([[0., 0., 0.],
+ H& e l8 U6 ?4 X$ i# f) ^4 \% t [0., 0., 0.]])
* S# o- J" K% q
; O8 I; P6 d) o9 P% g6 r2 r5 @- x Q" E0 M: S
array([0., 0., 0., 0., 0.])2 B' y2 j% s, D$ v8 j. q. f% I
3 w9 k9 f3 R }+ W( N
' V" G+ t9 J% `
类似的还有产生元素全部是1的数组的函数np.ones():
# x) r$ H% b7 A
/ \7 o3 n' T& w i+ i' O: Aa = np.ones([5])
. k# {5 O d. a4 va
' _+ Z$ p" y- r% p& m
" P7 K) q& m7 l; ~array([1., 1., 1., 1., 1.])9 t& g" w6 j! Z. R- ^# H4 J2 X9 w
7 {8 X5 i8 p6 [1 E$ T
0 f2 B+ Y/ ]3 y/ \7 Q
a = np.ones([2,3])
# t$ K* z) Q8 ^3 \0 Ba
/ }9 J& c, b: C, n8 j- P+ U
: g) F+ J+ M) E" B! k/ J
2 ~6 l$ m' O8 I/ P1 Oarray([[1., 1., 1.],8 S" i8 n% D: y: T8 C
[1., 1., 1.]]), T( d+ S+ j: }; c
% l2 h/ `, C5 W
- [) D8 R; h5 V+ O( _1 X5 e5 j7 zplt.plot(i)
2 u1 i7 b% V$ d+ [# a% K, c
3 f) m: @( Q7 L& a
& }- e6 {6 t0 k[<matplotlib.lines.Line2D at 0x7f0c2768d6d8>]( H/ g4 T t3 d9 X; n$ D& I
( m7 Q0 u) z! K& a) z/ C' c- h; @) A
- z1 L/ n. H+ v3 | / X( B! u5 X, U: K/ Y
9 K. e* A% a' D3 v6 C$ C% X5 D( P+ `1 w+ j
实现SI模型的核心代码是第三个cell的第11,12行:& \' E& E6 S. l( S' r/ M" \
4 A4 H% S- F1 j3 q w! n
for t in range(T-1):
9 v( ^: s' \% e7 _ i[t + 1] = i[t] + i[t] * lamda * (1.0 - i[t])) z9 y, i1 ?/ {* U- }; C( l, Y5 M
/ i! ^4 T9 `, q2 Y( X% r; q就是我们建立的数学模型,利用python的for循环语句累加迭代的方式把每天的增加量叠加到感染者比例上。 运行代码完成计算,我们利用matplotlib的pyplot来画出感染者的随天数的变化曲线:
# R( e# R+ {/ O" D5 vfig, ax = plt.subplots(figsize=(8,4))
1 G$ e' d) A3 O6 qax.plot(i, c='r', lw=2)
5 h5 Z; o+ X5 ?' Rax.set_xlabel('Day',fontsize=20)# f( z* W) z' e& Z) j1 L
ax.set_ylabel('Infective Ratio', fontsize=20)
/ o3 F/ R+ t6 S6 rax.grid(1)
3 r8 n& K9 J1 Z2 w- Jplt.xticks(fontsize=20)
6 y- B, ~% k# oplt.yticks(fontsize=20);& X! f9 S+ M2 W* e5 ~# H( J
& J4 f: c" F6 F9 v" [3 J& j! Y
! o% V& J0 h, D, I % W. b" m$ G# H" `3 G& R! P
& \9 Y# q7 X, Y+ p( U: _) a# ~, U
从这个结果看到,大约在25天左右,全部人群都会变成感染者,感染率 。
7 h+ N5 D) H+ A @在程序中我们假设每天每个患者传染0.8个人,你可以改变lamda的值,观察全部人群感染的天数的变化。
8 D" a! V# m" H, W4 ]' }* _认真思考你会知道,lamda的现实意义就是该城市的卫生水平,衡量的是消毒,隔离这些措施执行得怎么样。回到传染病模型,按照SI模型计算的结果,我们全人类都会患病,这好可怕!原因是我们忽略了一个很重要的因素,那就是我们有奋斗在一线的医护人员,我们会被治愈!所以SI模型只适合研究具有高传染风险又不能被治愈的病(比如HIV)。 但是对于其他病,我们是可以靠医疗和自身免疫系统康复的,那么紧接着的一个问题就是,被治愈后还会再被传染上嘛?根据这个问题的回答不同,我们有了两个不同的模型,SIR 和 SIS。现在可以揭晓,SIR的R的含义了,就是移出者(Removed),现实含义就是指被治愈后不会再被感染的人。而SIS表示治愈后仍然还是易感者。下面我们用python来分别实现这两个模型。 SIS模型为了实现这个模型,我们需要引入新的一个参数,治愈率 。好啦,先上我们的新示意图: Image Name和SI模型做比较,区别就是计算感染者的增加数时要减去被治愈的人数。
9 N2 A2 C$ z% {) F. ^+ h8 o9 g所以这时候每天的增加的感染者为: ,3 ~$ k% D8 N4 I7 G
增加的感染率为: 。
( y# d6 G [; `( l9 `( j5 b模型完成啦,修改python代码:
# G( o8 X4 X2 B& Z* W, t6 K" l# susceptiable ratio
5 |) G* E0 S4 ^9 @+ Bs = np.zeros([T])) t0 o R, H6 q0 o# x1 ]5 b
# infective ratio
5 b% F5 l5 {: r4 U2 P; X; I# Oi = np.zeros([T])
, Y* ]4 e- q. k# s. i4 P: T/ n) F- N* j7 Y* f
# contact rate. {/ M$ q4 Y# g* R" R/ S* o
lamda = 1.02 u. C" U# A f$ i- ^) M! ?' q
# recover rate
1 X$ Y" ^- g7 C1 }4 {. \gamma = 0.5 . g3 y$ @7 o1 z- ^; |
9 ^6 H" Y/ C6 }# initial infective people5 C; l/ q) l: p9 K9 \7 L3 s7 b
i[0] = 45.0 / N
, i/ G- @& O- h. A2 n% A* O+ X" n
/ T) W( B& O5 Ofor t in range(T-1):2 C7 I% }$ }! L& c3 Q
i[t + 1] = i[t] + i[t] * lamda * (1.0 - i[t]) - gamma*i[t]2 l7 ?. ~3 e& W8 ?2 _
9 g& D% I% s# _' ?
& |" @: G3 Q& V3 q% ] ?; N D$ H& @8 {7 ?- x
运行代码,我们画出曲线(代码和SI模型的画图完全一样):$ d& U$ y& l& Q/ s8 B8 {: @
* k1 b% i: N. X. b5 K l
fig, ax = plt.subplots(figsize=(8,4))4 T8 E2 ?5 g/ {+ ^/ b! C
ax.plot(i, c='r', lw=2)8 V+ g, _6 Q' l. j% _9 ?
ax.set_xlabel('Day',fontsize=20)/ c* P1 |$ d8 X0 y& i N
ax.set_ylabel('Infective Ratio', fontsize=20)
0 e6 N3 ^6 T1 h( j+ U$ @, zax.grid(1)4 [5 n9 w% V x X0 h
plt.xticks(fontsize=20)
2 i5 Z5 e, Q5 z8 m0 L! A# I! C* L: P% ?8 Rplt.yticks(fontsize=20);
8 J: {- h+ Q; K, T, W: ?
3 a' u1 T* G/ ?2 |+ m% N9 I: g9 U![]()
& A. h4 O, X" b, U' d. K5 n9 Z' ?9 p& A7 o) E7 |
) X1 X: W( ~- ~, X7 [1 v9 v* p
行代码,我们画出曲线(代码和SI模型的画图完全一样). g, A8 t9 G, v2 l
可以看到,达到最大感染率的时间退后10天左右,最后感染和治愈达到动态平衡,人群中有始终有一半的人感染着。所以,SIS模型适合研究具有传染性和反复性的流行病,比如常见流感。同样的,感兴趣的话,改变lamda和gamma的值,观察曲线的变化。和lamda不同的是,gamma的现实意义就是对这种疾病的治疗水平。 SIR模型加入了移出者,被治愈的病人不会再被传染,先上我们的新示意图: Image NameSIR 模型
- C0 Q1 ~2 r2 X- j注意到这里,人群被分成了三类,不再只有I和S,所以相比于之前的模型,我们需要找到新的约束关系。现在我们需要分别计算三种人每天的增加量了:
p4 }4 y% g+ K) ?- 易感者:每天都在被传染,所以一直在减少,减少量为被传染的人数:
- 感染者:增加了被感染的人,减少了治愈的人:
- 移出者:增加了治愈的人:
, z. L1 H* G; g8 h' V2 w+ s4 N1 R3 Y
建模完成,修改python代码,并且假设人群普遍易感,新型疾病,初始没有移出者。
6 ^& ]0 I. P' M, }8 L* A% i, q# population
$ z! c, i2 c: ]3 l* z' k4 GN = 1e7 + 10 + 5
; I2 L. z+ Y+ C$ P; c# simuation Time / Day1 {: ^* x$ p2 t; _$ e% \( I
T = 170
9 ]+ w" t2 g$ Q+ c0 N$ N4 t! l$ e# susceptiable ratio
. U; x$ h8 a- x: E" m0 _s = np.zeros([T])
y7 E f9 R) j- C# infective ratio
. g1 P- S' K. a I( S1 `% c. Oi = np.zeros([T])7 { Y4 K4 e- `% D5 \
# remove ratio* O$ D: D* s/ ]+ D
r = np.zeros([T]). W- Y/ v% z: K: D; U% p
% e$ {& [7 i- g/ ^4 e$ N2 g
# contact rate [/ I0 w" N8 R& C
lamda = 0.2586- t0 {$ f4 R& b& W& s1 A7 q
# recover rate
) Y% v" n7 d% l; pgamma = 0.08218 `3 x4 x" B* r* E
( A& ` F% G9 @: ? B+ I# initial infective people
. F* {: B6 H( Vi[0] = 10.0 / N
! h$ S4 \7 i l' A+ @) Js[0] = 1e7 / N
5 q9 _8 y* x1 B5 F& hfor t in range(T-1):
2 ]! q* H$ O5 N+ C( s i[t + 1] = i[t] + i[t] * lamda * s[t] - gamma*i[t]
! y' q# z/ d* l$ T* r8 l2 i s[t + 1] = s[t] - lamda * s[t] * i[t]
7 S$ r' r+ T/ t# v r[t + 1] = r[t] + gamma*i[t]; y( J! l4 l6 O) c
, B7 g4 [) P/ W+ j `% Ofig, ax = plt.subplots(figsize=(10,6))! n! u1 [7 L( M# A/ [1 x
ax.plot(s, c='b', lw=2, label='S')5 K6 J0 P+ k* R& } j6 D4 S! e3 w8 \% J
ax.plot(i, c='r', lw=2, label='I')
4 F8 {" ]' j: F9 r7 @$ _ax.plot(r, c='g', lw=2, label='R')2 N9 n8 {) ?2 ]
ax.set_xlabel('Day',fontsize=20)
" L: }6 g' B& L. ~# b' q6 v5 iax.set_ylabel('Infective Ratio', fontsize=20)
) T3 C9 p# O. Z4 h' P6 O* fax.grid(1)$ E( p0 y+ j! ]( v) f1 o4 t
plt.xticks(fontsize=20)6 t7 y# n8 d! W& A6 h: L
plt.yticks(fontsize=20)! G. e$ ^8 B' e
plt.legend();1 @" s( t7 Z0 i+ F3 l5 K5 M
3 B" ~1 _1 ]) [2 h$ w5 r. F5 l
" M# }$ U; J8 E) R% y) p![]()
' Q7 h) b& V" n" F8 K( U9 u E9 U) u
感染人数峰值发生在一个月左右,最大感染人数不到人群的20%, 但是最终人群的80%都会得此病(就是最终的移出者的比例)。SIR模型适合研究没有潜伏期的急性传染病,治疗后能够痊愈并具有抗病性。 到这里,虽然不准确,我们也可以先用SIR模型来分析一下此次疫情,武汉新型冠状病毒的传染病动力学! 模型有了,其实就是确定参数的问题。一开始就有人做了这个工作: Image Name于教授给的参数是参考了非典的, ,初始易感人数为一千万, 初始感染10人,初始移出者5人,那么我们的城市总人数 , 带入我们的模型得到结果:重现于教授的模型: W& |& j+ \+ ^% J" r& Y2 O6 k/ O
高峰和尾声日期的推测基本相符。
/ d! s0 e3 B* b" I! X: r! M& f& D& @# susceptiable ratio7 A2 R3 t: r* c9 x2 s
s = np.zeros([T])
% p1 V# A1 c- ` x3 o# infective ratio* b9 a* t+ T7 z; ^
i = np.zeros([T])
3 `, v, l3 Y4 q7 i/ J3 ^# removed ratio( Z# r; e. W: a
r = np.zeros([T])- S$ s* O& w7 Z7 D- ]
0 M* J; I9 r, r/ J6 j A# birth ratio
N" b: y- R4 r. B; R+ x9 _" z5 ~b = 20.0 / N
4 L; H4 ?" r- E2 E# death ratio
* ?; a Q/ N1 [' ^% rd = 10.0 / N
2 w! \. l: V% A# r
4 ~, N2 F2 h9 _) l, A& [- }# contact rate c2 |* a0 |7 W/ }$ m% H3 s* H
y = 1.5& M. ~7 o* [& _5 j
# recover rate
5 |& Z. @9 J5 \! zu = 0.8 # 1 / infective_period/ f# P S! t G/ c; b2 Q3 a" g6 Y
9 y( ^+ I6 [* U, y* a8 k& h# sigma = y / u0 y, s+ ^+ Z6 O. d& H
$ P* O! l+ T, k# initial infective people
% O# e; ]& f7 J: k* X* H. }i[0] = 45.0 / N' a3 _' t0 k6 ~5 \- \9 z! g
s[0] = 1 - i[0]
4 w, L+ C0 D* T! O. ^% H! L! Jfor t in range(T-1):( ?8 }" g- _7 f9 {+ Y) x+ n( X
i[t+1] = i[t] + i[t] * y * s[t] - u*i[t] - d*i[t]. A: m2 z/ d6 @
s[t+1] = s[t] - y * s[t] * i[t] + b - d*s[t]
1 [1 `/ D9 F( X" _8 I# Y r[t+1] = r[t] + u*i[t] - d*r[t]- u# H/ l4 ~* ]% D$ b6 g9 R
/ t. Y# T" {" s5 i# j; C
plt.plot(i)/ U( ^4 D: E$ \% m8 _
plt.plot(s)
, k) X" c' {2 B# \* M F s1 Fplt.plot(r)
$ n# w: C* G$ aplt.plot(np.diff(i),ls='--')
9 p9 j5 V# F* t2 x7 {& ?- |! [- _+ w+ {) }: o, k# b
$ k4 _6 t& b; [* H# R% s[<matplotlib.lines.Line2D at 0x7f77796e8518>]! X1 X6 M, l t$ O# \, C) ?; R0 ~: g( ]
+ c% d6 W) S" K9 l/ X* i7 j D![]()
6 i, z d+ Q5 U- s8 N8 C. f+ Y
' P6 B; ?, b9 n! vSEIR模型但是,SIR模型和实际情况的出入会比较大,因为忽略了太多因素了,比如说潜伏期,比如说政策调控,药物,出生死亡等等。下面我们可以和前面一样,把潜伏期考虑进去,新增一个人群,叫潜伏者E(exposed): Image NameSEIR模型" [3 H! ^8 w6 `3 @5 _7 l1 K9 f
同样的我们需要计算各人群每天的增加量: S:每天减少:
* C+ o3 m0 @ ~) B/ u. l6 l: zE:每天增加传染,减少发病:
8 }! b0 L( l5 i7 y6 N4 E N4 z. I: {I:每天增加发病,减少治愈: 9 k4 z, B' x0 T, n: n! |
R:每天增加治愈: - u/ ^7 f0 f j4 s. A# M
建模完成,修改我们的python程序,这里的 可以理解为潜伏期的倒数。给的4天。新型冠状病毒给目前临床的潜伏期是3-14天。
2 k) t" H- n S2 K% M" [# population# T) B2 j% r+ K7 Z9 L: ^2 v/ c% i: v
N = 1e7 + 10 + 5
9 x: i) G5 |! r6 d( ^# simuation Time / Day8 M7 g6 a5 B4 N! ~! }$ ~
T = 170% }4 m9 T5 l1 q/ B# ^" d# P
# susceptiable ratio
2 G& ?* J; t( ]4 \# p; r& qs = np.zeros([T])
: C7 H" U1 n" ] z* i# exposed ratio
6 C$ F- s9 }1 Ie = np.zeros([T])+ H& i6 u. k/ l' t+ J- X
# infective ratio
7 X# H3 o" ]! G3 j+ mi = np.zeros([T])
6 l0 C' E' _. K' u8 r, z1 o: m# remove ratio
' G* u W7 r! K4 J) ~# ?' ]) \/ p) k+ Z, ]r = np.zeros([T])' M$ G2 ]( T1 O& [, C' }
2 g: U! Q1 x0 j7 C# G x, \# contact rate
6 d0 K l: p3 g9 I5 m" d4 m/ j. Qlamda = 0.50 Q" f9 h% d! W* _- C! E" R
# recover rate2 G1 c9 h9 i6 z/ w" y" e
gamma = 0.0821
: W) z! Z9 E# v N# exposed period- f% L4 q; J' G z% _
sigma = 1 / 47 e% q. @- x* h- o
$ ^8 B* G6 E8 e3 M# initial infective people4 x: p9 N4 _! S$ N, I
i[0] = 10.0 / N. [4 Z1 ?# y& F; Q
s[0] = 1e7 / N8 h2 I# [7 \) Y7 k! o/ m
e[0] = 40.0 / N$ E" g; y! ?0 o* W% T
for t in range(T-1):% h7 B0 m+ G; ^( Y
s[t + 1] = s[t] - lamda * s[t] * i[t]- }9 ~; W: Y+ Y3 f* p
e[t + 1] = e[t] + lamda * s[t] * i[t] - sigma * e[t]
t/ N! T) z, b3 o8 Y; e i[t + 1] = i[t] + sigma * e[t] - gamma * i[t]
; @+ t+ l- H8 ?' E: P r[t + 1] = r[t] + gamma * i[t]$ h# }9 [ I+ ?* |$ K% v
% A7 @! y" M# I- \' m: K2 l
: y/ |) x2 o) w8 W1 ?$ c6 Mfig, ax = plt.subplots(figsize=(10,6))
m' ?# ^+ w# F1 ?ax.plot(s, c='b', lw=2, label='S')
6 B0 A) Y3 r0 z9 H6 I# F4 iax.plot(e, c='orange', lw=2, label='E')! x" r( \' {$ F
ax.plot(i, c='r', lw=2, label='I')1 m' g4 B* H) l/ V( c
ax.plot(r, c='g', lw=2, label='R')/ n. o! N" A$ @
ax.set_xlabel('Day',fontsize=20)
0 |: {( Q, l: }' }7 J' A% T+ A, Vax.set_ylabel('Infective Ratio', fontsize=20)
9 Y% g9 e; ~* f3 ]* ^1 |ax.grid(1), z6 e$ x. U0 n) J
plt.xticks(fontsize=20). }% H4 |6 w1 F$ A& d' _! B' ]
plt.yticks(fontsize=20)
! @/ Q/ R* [) D) u e, t! M; Cplt.legend();. Z1 [1 c5 {8 L$ w1 R2 u% V
+ M5 w2 t: w5 `8 L/ M0 J, J" c8 H- a* _/ J8 @+ c
2 z# V/ W! H- l7 q
" _% {+ }, b4 D# j0 b( o8 Y. Q按照模型的结果,此次疫情可能真的要持续到 三四月份。这个接触率 真的非常影响表现,模型给的是个常数,但是由于政府措施的原因,这应该是个变化的值。
1 T* d2 v' p$ u- _& w. C还有治愈率 也是。没有完美的模型,但是随着考虑因素的增多,就会越来越接近实际情况,从而指导政府的疫情方针政策的制定。/ |1 w' d3 j" p& `8 v5 c, S* S% i
2 C4 z0 }7 E$ o
, c" Y$ l6 o" T" P4 _
, c5 E4 I6 Y% b
* i7 w, j7 w& f. S, N& G" ^ |