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.