上海新冠疫情可视化面板
根本再生数 R0 是指在一个齐全易感人群中,没有任何干涉措施的状况下,一个被传染病病原体感化的个体所能引起的第二代感化病例数,罕用于掂量病原体本身的流传力。(“流行病学专家解读
| 传染病的无效再生数与根本再生数,”n.d.)
时变再生数 Rt 能够了解为真实世界 (往往有干涉措施,人群不是齐全易感) 情景下,t 时刻的再生数,
受干涉措施,感染者及易感者比例等因素影响,随工夫变动而变动。隔离等干涉措施的指标在于将 Rt 升高至 1 以下,Rt \< 1 意味着新增病例数将逐步缩小,疫情失去管制。
应用 R 语言 EpiEstim
包预计 Rt(Thompson et al.
2019),须要假如系列距离(serial
interval) 的散布, 本文中假如系列距离均值为 4 天,标准差为 2 天 (“新型冠状病毒 Omicron 变异株的流行病学特色及其迷信防控倡议,”
n.d.)。应用EpiEstim
包默认的 1 周滑动窗进行剖析。后果如下:
library(tidyverse)
library(EpiEstim)
library(patchwork)
## load data
case.asym.wider.sh<-read.csv('https://raw.githubusercontent.com/shalom-lab/covid.sh/main/local/share/case.asym.wider.sh.csv')
# observation
cases<-case.asym.wider.sh %>%
select(date,pos) %>%
mutate(date=as.Date(date)) %>%
rename(I=pos,dates=date)
## make config
config <- make_config(
mean_si = 4,
std_si = 2
)
## estimate
res <- estimate_R(
incid = cases,
method = "parametric_si",
config = config
)
#plot(res)
res.r<-res$R %>% as_tibble() %>%
rename(mean=`Mean(R)`,std=`Std(R)`,lbd=`Quantile.0.025(R)`,ubd=`Quantile.0.975(R)`) %>%
mutate(date=cases$dates[res$R$t_end])
res.si <- as_tibble(list(time=as.integer(str_sub(names(res$si_distr),2)),
frequency=as.vector(res$si_distr)))
p1<-ggplot(data = cases,aes(x=dates,y=I))+
geom_col(fill= "#AD002AFF")+
scale_x_date(date_breaks = "2 days",date_labels = "%m/%d",expand = c(0,0.5))+
labs(x="",y=" 每日新增阳性数 ",title="Epidemic curve")+
theme_bw()+
theme(axis.text.x = element_text(angle=45,vjust=0.5,hjust = 0.5))
p2<-ggplot(data = res.r,aes(x=date,y=mean))+
geom_ribbon(aes(ymin=lbd,ymax=ubd),fill= "#AD002AFF",alpha=0.2)+
geom_line(size=1,colour= "#AD002AFF")+
geom_hline(yintercept = 1,size=1,lty=2)+
scale_x_date(date_breaks = "2 days",date_labels = "%m/%d",expand = c(0,0.5),limits = c(as.Date('2022-03-09'),Sys.Date()-1))+
labs(x="",y=" 时变再生数 Rt",title='')+
theme_bw()+
theme(axis.text.x = element_text(angle=45,vjust=0.5,hjust = 0.5))
p3<-ggplot(data = res.si,aes(x=time,y=frequency))+
geom_line()+
labs(x="Time",y="Frequency",title='Assumptive Serial Interval Distribution')+
theme_bw()
p1+p2+plot_layout(ncol = 1)
p3
结果显示目前时变再生数 Rt 已降至 1 以下,Rt 继续处于 1 以下将示意疫情失去无效管制, 心愿持续放弃,期待早日解封~
参考资料
[1] Thompson, R. N., J. E. Stockwin, R. D. van Gaalen, J. A. Polonsky, Z. N.
Kamvar, P. A. Demarsh, E. Dahlqwist, et al. 2019.“Improved Inference of
Time-Varying Reproduction Numbers During Infectious Disease Outbreaks.”
Epidemics 29 (December): 100356.
https://doi.org/10.1016/j.epi….
[2]“新型冠状病毒 Omicron 变异株的流行病学特色及其迷信防控倡议.”
http://mp.weixin.qq.com/s?__b….
[3]“流行病学专家解读 | 传染病的无效再生数与根本再生数.”
http://mp.weixin.qq.com/s?__b….