Description Usage Arguments Details Value References Examples
View source: R/get_cohort_mindet_VE_irr.R
The function get_cohort_mindet_VE_irr
calculates the minimum detectable variant and vaccine-specific efficacy (VE) for a given sample size, power, and type-I error rate.
The efficacy is defined as VE = 1 - incidence rate ratio
, and the function returns
both absolute and relative minimum detectable VE. The NULL hypothesis is that VE = 0
and
the alternate hypothesis in that VE is not equal to 0
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | get_cohort_mindet_VE_irr(
anticipated_VE_for_each_brand_and_variant = matrix(data = c(0.1, 0.2, 0.3, 0.4, 0.5,
0.6, 0.7, 0.8, 1), nrow = 3, ncol = 3, byrow = F, dimnames = list(paste0("brand",
1:3), paste0("variant", 1:3))),
brand_proportions_in_vaccinated = c(brand1 = 0.3, brand2 = 0.5, brand3 = 0.2),
overall_vaccine_coverage = 0.3,
proportion_variants_in_unvaccinated_cases = c(variant1 = 0.6, variant2 = 0.3,
variant3 = 0.1),
overall_attack_rate_in_unvaccinated = 0.1,
study_period = 1,
calculate_relative_VE = T,
power = 0.8,
alpha = 0.05,
confounder_adjustment_Rsquared = 0,
prob_missing_data = 0.1,
total_subjects = seq(1000, 10000, 25)
)
|
anticipated_VE_for_each_brand_and_variant |
a matrix of vaccine efficacy of each vaccine (row) against each variant (column). Each value must be a real number between 0 and 1. |
brand_proportions_in_vaccinated |
a vector denoting the proportion in which vaccines are given in the vaccinated subjects of the study cohort. Each value of this vector must be a real number between 0 and 1 and the sum of the values of this vector must be equal to 1. |
overall_vaccine_coverage |
the proportion of the study cohort that will be vaccinated. It should be a real number between 0 and 1. |
proportion_variants_in_unvaccinated_cases |
a vector of the proportions in which each variant is expected to be present in the unvaccinated and infected subjects in the study cohort. Each value of this vector must be a real number between 0 and 1 and the sum of the values of this vector must be equal to 1. |
overall_attack_rate_in_unvaccinated |
the proportion of the study cohort that is expected to infected over the study period. It should be a real number between 0 and 1. |
study_period |
the study period (epochs) should be numeric value greater than 0. |
calculate_relative_VE |
a logical indicating if calculations should also be done for relative vaccine efficacy (default |
power |
the power to detect the VE. It is equal to 1 - Type-II error. It is a numeric that must take a value between 0 and 1. |
alpha |
controls the width |
confounder_adjustment_Rsquared |
we use this parameter to adjust the calculations for potential confounders using the methodology proposed by Hsieh and Lavori (2000). It represents the amount of variance (R^2) explained in a regression model where vaccination status is the outcome and confounders of interest are predictors. It is a numeric that must take a value between 0 (no adjustment for confounders) and 1. |
prob_missing_data |
to adjust the calculations for non-informative and random subject loss to follow-up/dropout. it should take a numeric value between 0 and 1. |
total_subjects |
a vector of study cohort size for which calculations should be done. |
In this function efficacy is defined as VE = 1 - incidence rate ratio
, where 'incidence rate ratio' is
the ratio of incidence rates of being a case of a particular variant/variant among the groups being compared.
When the groups being compared are a particular vaccine versus placebo then we call the VE
as the absolute VE of the vaccine. For M
vaccines there are M
absolute VE, one each for the M
vaccines.
When the groups being compared are a particular vaccine versus another vaccine then we call the VE
as the relative VE of the vaccines, for a particular variant. For M
vaccines and I
variants there are I x 2 x utils::combn(M, 2)
permutations of relative VE of two vaccines against the same variant.
We first transform the user inputs for I
variants and M
vaccines into a (I + 1) x (M + 1)
cross table of
cumulative-risks of being a case or a control over the study period. The overall sum of all cumulative-risks,
i.e., all cells, of this table is 1. The first row of our cumulative-risk table contain cumulative-risk of being a control.
The first column corresponds to subjects who are unvaccinated.
Thus, the cell {1,1}
contains the probability (cumulative-risk) that over the study period a subject will be a control and unvaccinated.
The remaining I
rows correspond to subjects who are cases of a particular variant/variant of the pathogen,
and the remaining M
columns correspond to subjects who are vaccinated with a particular vaccine. In the
person-time based estimator of incidence rates the number of cases only constitute the numerator.
The denominator is person-time contributed by subjects vaccinated with a particular vaccine (or placebo).
Hence, in addition to the table of cumulative-risks, using the user input we also
obtain a I x (M + 1)
table of incidence rates.
In general, while calculating minimum detectable VE it is not necessary to ask for anticipated_VE_for_each_brand_and_variant
.
The reason we need it in the multiple variant and multiple vaccine scenario is explained next.
After we obtain the cumulative incidence table our next step is to calculate the minimum detectable VE for each absolute and relative VE combination.
For absolute VE we extract a I x 2
sub-table of cumulative-risks from the larger (I + 1) x (M + 1)
cross table of
cumulative-risks. The two columns are for the vaccine of interest and placebo. The effective sample size for this sub-table and the absolute VE is then
total_subjects * sub_table_probability_sum * (1 - prob_missing_data) * (1 - confounder_adjustment_Rsquared)
.
Here sub_table_probability_sum
is the sum of the cells of the sub_table.
This sum corresponds to the percentage of the total_subjects
that can be used for a specific absolute VE calculation.
The effective overall coverage in this sub-table is the rescaled probability of being vaccinated in the I x 2
sub-table.
The effective incidence rate of the variant in this comparison is the variant-specific incidence rate of the variant taken
from the table of incidence rates.
We then simply pass these adjusted parameters to the function epi.sscohortt
of the R package epiR
to obtain the minimum detectable absolute VE.
For relative VE the process is similar to absolute VE, except that instead of placebo we select a I x 2
sub-table where
the columns are two vaccines of interest.
A data frame consisting of the input parameters, absolute and relative VE combinations, and the minimum detectable VE for each absolute and relative VE combination.
Hsieh, F. Y., & Lavori, P. W. (2000). Sample-size calculations for the Cox proportional hazards regression model with nonbinary covariates. Controlled clinical trials, 21(6), 552-560.
Rothman KJ (2012) Epidemiology: An Introduction. 2nd Ed., Oxford University Press, Oxford.
1 2 |
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.