Computes the relative risk and its confidence intervals. Confidence intervals are calculated using normal approximation ("wald"), ("score") or by using odds ratio ("use.or")

RelRisk(x, y = NULL, conf.level = NA, 
        method = c("score", "wald", "use.or"), delta = 0.5, ...)

Arguments

x

a numeric vector or a 2x2 numeric matrix, resp. table.

y

NULL (default) or a vector with compatible dimensions to x. If y is provided, table(x, y, ...) will be calculated.

conf.level

confidence level. Default is NA, meaning no confidence intervals will be reported.

method

method for calculating the relative risk and the confidence intervals. Can be one out of "score", "wald", "use.or". Default is "score".

delta

small constant to be added to the numerator for calculating the log risk ratio (Wald method). Usual choice is 0.5 although there does not seem to be any theory behind this. (Dewey, M. 2006)

...

further arguments are passed to the function table, allowing i.e. to set useNA.

Details

Best is to always put the outcome variable (disease yes/no) in the columns and the exposure variable in the rows. In other words, put the dependent variable – the one that describes the problem under study – in the columns. And put the independent variable – the factor assumed to cause the problem – in the rows. (Gerritsen, 2010)

According to this, the function expects the following table structure:


                     diseased=1   diseased=0
    exposed=1 (ref)     n00          n01
    exposed=0           n10          n11	
  

The relative risk is then calculated as:

       (exposed & diseased) / exposed
rr = ----------------------------------
     (unexposed & diseased) / unexposed

If the table to be used is not in the required shape, use the function Rev() and/or t() to reverse rows, columns, or both, resp. to transpose the table.

Value

If conf.level is not NA then the result will be a vector with 3 elements for estimate, lower confidence intervall and upper for the upper one. Else the relative risk will be reported as a single value.

References

Rothman, K. J. and Greenland, S. (1998) Modern Epidemiology. Lippincott-Raven Publishers

Rothman, K. J. (2002) Epidemiology: An Introduction. Oxford University Press

Jewell, N. P. (2004) Statistics for Epidemiology. 1st Edition, 2004, Chapman & Hall, pp. 73-81

Selvin, S. (1998) Modern Applied Biostatistical Methods Using S-Plus. 1st Edition, Oxford University Press

Gerritsen, A (2010) https://www.theanalysisfactor.com/cross-tabulation-in-cohort-and-case-control-studies/

Author

Andri Signorell <andri@signorell.net>, based on code of Yongyi Min and Michael Dewey

See also

Examples

m <- matrix(c(78,50,1422,950), 
            nrow=2, 
            dimnames = list(water=c("cont", "clean"), 
                            diarrhea=c("yes", "no")))

RelRisk(m, conf.level = 0.95)
#> rel. risk    lwr.ci    upr.ci 
#> 1.0400000 0.7375967 1.4682951 


mm <- cbind(c(9,20),c(41,29))
mm
#>      [,1] [,2]
#> [1,]    9   41
#> [2,]   20   29
 
RelRisk(t(mm), conf.level=0.95)
#> rel. risk    lwr.ci    upr.ci 
#> 0.5298570 0.2869143 0.8869267 
RelRisk(t(mm), conf.level=0.95, method="wald")
#> rel. risk    lwr.ci    upr.ci 
#> 0.5298570 0.3037489 0.9242780 
RelRisk(t(mm), conf.level=0.95, method="use.or")
#> rel. risk    lwr.ci    upr.ci 
#> 0.5298570 0.2597810 0.9051415