Objective To estimate reproduction number (Ro) using different methods.
# # Remove all objects from workspace.
remove (list = objects() )
# # Load add-on packages - R0 - contains differnt methods to estimate reproduction number.
library (R0)
## Loading required package: MASS
Method 1 - Contact rate, transmission probability, infectious period
Estimate Ro using contact rate, transmission probability and infectious period.
contact_rate = 10
transmission_probability = 0.06
infectious_period = 4
R0 = contact_rate * transmission_probability * infectious_period
c ("R0 = ", R0)
## [1] "R0 = " "2.4"
Description and Results
If the contact rate is 10 per day, the transmission probability is 0.06, and the infectious period is 4 days, then the reproductive number is 2.4. This means that for every 1 person infected, they will cause 2.4 secondary infections of the same disease.
contact_rate = 8
transmission_probability = 0.15
infectious_period = 6
R0 = contact_rate * transmission_probability * infectious_period
c ("R0 = ", R0)
## [1] "R0 = " "7.2"
Description and Results
If the contact rate is 8 per day, the transmission probability is 0.15, and the infectious period is 6 days, then the reproductive number is 7.2. This means that for every 1 person infected, they will cause 7.2 secondary infections of the same disease.
Method 2 - Attack rate
Estimate Ro using attack rate.
attack_rate = 0.3
R0 = (- log (1 - attack_rate)) / attack_rate
c ("R0 = ", R0)
## [1] "R0 = " "1.18891647979577"
Description and Results
If attack rate is 30% and the susceptible number is 1, then the reproductive number is 1.19.
Estimate Ro using attack rate.
attack_rate = 0.4
est.R0.AR (AR = attack_rate)
## Reproduction number estimate using Attack Rate method.
## R : 1.277064
Description and Results
If attack rate is 40% and the susceptible number is 1, then the reproductive number is 1.28.
Estimate Ro using attack rate.
attack_rate = 0.55
est.R0.AR (AR = attack_rate)
## Reproduction number estimate using Attack Rate method.
## R : 1.451832
Description and Results
If attack rate is 55% and the susceptible number is 1, then the reproductive number is 1.45.
Estimate Ro using attack rate.
attack_rate = 0.8
est.R0.AR (AR = attack_rate)
## Reproduction number estimate using Attack Rate method.
## R : 2.011797
Description and Results
If attack rate is 80% and the susceptible number is 1, then the reproductive number is 2.01.
Method 3 - Average age of infection (and life expectancy)
Average age of infection for chicken pox was 10 in Maryland during 1913-1917, and life expectancy was 65 years.
average_age = 10
life_expectancy = 65
R0 = life_expectancy / average_age
c ("R0 = ", R0)
## [1] "R0 = " "6.5"
Description and Results
If the average age at infection is 10 years old and life expectancy is 65 years, then the reproductive number will be 6.5.
Average age of infection for chicken pox was 5 in Maryland during 1913-1917, and life expectancy was 70 years.
average_age = 5
life_expectancy = 70
R0 = life_expectancy / average_age
c ("R0 = ", R0)
## [1] "R0 = " "14"
Description and Results
If the average age at infection is 5 years old and life expectancy is 70 years, then the reproductive number will be 14.
Method 4 - Exponential growth rate
Estimate Ro using exponential growth rate for the 1918 influenza pandemic in Germany, using the data from the paper by Nishiura for key transmission parameters of an institutional outbreak during the 1918 influenza pandemic in Germany.
data (Germany.1918)
# plot epidemic
plot (Germany.1918, xlab = "Time")
# plot log of epidemic curve
plot (log (Germany.1918), xlab='Time')
# generatiom time distribution
mGT = generation.time ("gamma", c(3, 1.5))
# estimate R0 using expoential growth method using start date of first day and end date of 30 days.
est.R0.EG (Germany.1918, mGT, begin=1, end=30)
## Waiting for profiling to be done...
## Reproduction number estimate using Exponential Growth method.
## R : 1.43944[ 1.416545 , 1.462916 ]
Description and Results
The estimation of exponential growth in the graphs above shown that the reproductive number of the 1918 influenza pandemic in Germany was 1.44
Method 5 - Maximum likelihood
# estimate R0 using maximum likelihood method
mGT = generation.time("gamma", c(2.45, 1.38))
est.R0.ML (Germany.1918, mGT)
## Reproduction number estimate using Maximum Likelihood method.
## R : 1.205348[ 1.152364 , 1.259946 ]
Description and Results
The estimation of R0 by using the maximum likelihood method of the 1918 influenza pandemic in Germany was 1.21.