epi.2by2 {epiR}  R Documentation 
Computes summary measures of risk and a chisquared test for difference in the observed proportions from count data presented in a 2 by 2 table. With multiple strata the function returns crude and MantelHaenszel adjusted measures of association and chisquared tests of homogeneity.
epi.2by2(dat, method = "cohort.count", conf.level = 0.95, units = 100, interpret = FALSE, outcome = "as.columns") ## S3 method for class 'epi.2by2' print(x, ...) ## S3 method for class 'epi.2by2' summary(object, ...)
dat 
a vector of length four, an object of class 
method 
a character string indicating the study design on which the tabular data has been based. Options are 
conf.level 
magnitude of the returned confidence intervals. Must be a single number between 0 and 1. 
units 
multiplier for prevalence and incidence (risk or rate) estimates. 
interpret 
logical. If 
outcome 
a character string indicating how the outcome variable is represented in the contingency table. Options are 
x, object 
an object of class 
... 
Ignored. 
Where method is cohort.count
, case.control
, or cross.sectional
and outcome = as.columns
the required 2 by 2 table format is:
       
Disease +  Disease   Total  
       
Expose +  a  b  a+b 
Expose   c  d  c+d 
       
Total  a+c  b+d  a+b+c+d 
       
Where method is cohort.time
and outcome = as.columns
the required 2 by 2 table format is:
     
Disease +  Time at risk  
     
Expose +  a  b 
Expose   c  d 
     
Total  a+c  b+d 
     
A summary of the methods used for each of the confidence interval calculations in this function is as follows:
An object of class epi.2by2
comprised of:
method 
character string returning the study design specified by the user. 
n.strata 
number of strata. 
conf.level 
magnitude of the returned confidence intervals. 
interp 
logical. Are interpretative statements included? 
units 
character string listing the outcome measure units. 
tab 
a data frame comprised of of the contingency table data. 
massoc.summary 
a data frame listing the computed measures of association, measures of effect in the exposed and measures of effect in the population and their confidence intervals. 
massoc.interp 
a data frame listing the interpretive statements for each computed measure of association. 
massoc.detail 
a list comprised of the computed measures of association, measures of effect in the exposed and measures of effect in the population. See below for details. 
When method equals cohort.count
the following measures of association, measures of effect in the exposed and measures of effect in the population are returned:

Wald, Taylor and score confidence intervals for the incidence risk ratios for each strata. Wald, Taylort and score confidence intervals for the crude incidence risk ratio. Wald confidence interval for the MantelHaenszel adjusted incidence risk ratio. 

Wald, score, Cornfield and maximum likelihood confidence intervals for the odds ratios for each strata. Wald, score, Cornfield and maximum likelihood confidence intervals for the crude odds ratio. Wald confidence interval for the MantelHaenszel adjusted odds ratio. 

Wald and score confidence intervals for the attributable risk (risk difference) for each strata. Wald and score confidence intervals for the crude attributable risk. Wald, Sato and GreenlandRobins confidence intervals for the MantelHaenszel adjusted attributable risk. 

Wald and Pirikahu confidence intervals for the population attributable risk for each strata. Wald and Pirikahu confidence intervals for the crude population attributable risk. The Pirikahu confidence intervals are calculated using the delta method. 

Wald confidence intervals for the attributable fraction for each strata. Wald confidence intervals for the crude attributable fraction. 

Wald confidence intervals for the population attributable fraction for each strata. Wald confidence intervals for the crude population attributable fraction. 

chisquared test for difference in exposed and nonexposed proportions for each strata. 

chisquared test for difference in exposed and nonexposed proportions across all strata. 

MantelHaenszel chisquared test that the combined odds ratio estimate is equal to 1. 

MantelHaenszel (Woolf) test of homogeneity of the individual strata incidence risk ratios. 

MantelHaenszel (Woolf) test of homogeneity of the individual strata odds ratios. 
When method equals cohort.time
the following measures of association and effect are returned:

Wald confidence interval for the incidence rate ratios for each strata. Wald confidence interval for the crude incidence rate ratio. Wald confidence interval for the MantelHaenszel adjusted incidence rate ratio. 

Wald confidence interval for the attributable rate for each strata. Wald confidence interval for the crude attributable rate. Wald confidence interval for the MantelHaenszel adjusted attributable rate. 

Wald confidence interval for the population attributable rate for each strata. Wald confidence intervals for the crude population attributable rate. 

Wald confidence interval for the attributable fraction for each strata. Wald confidence interval for the crude attributable fraction. 

Wald confidence interval for the population attributable fraction for each strata. Wald confidence interval for the crude poulation attributable fraction. 

chisquared test for difference in exposed and nonexposed proportions for each strata. 

chisquared test for difference in exposed and nonexposed proportions across all strata. 

MantelHaenszel chisquared test that the combined odds ratio estimate is equal to 1. 
When method equals case.control
the following measures of association and effect are returned:

Wald, score, Cornfield and maximum likelihood confidence intervals for the odds ratios for each strata. Wald, score, Cornfield and maximum likelihood confidence intervals for the crude odds ratio. Wald confidence interval for the MantelHaenszel adjusted odds ratio. 

Wald and score confidence intervals for the attributable risk for each strata. Wald and score confidence intervals for the crude attributable risk. Wald, Sato and GreenlandRobins confidence intervals for the MantelHaenszel adjusted attributable risk. 

Wald and Pirikahu confidence intervals for the population attributable risk for each strata. Wald and Pirikahu confidence intervals for the crude population attributable risk. 

Wald confidence intervals for the estimated attributable fraction for each strata. Wald confidence intervals for the crude estimated attributable fraction. 

Wald confidence intervals for the population estimated attributable fraction for each strata. Wald confidence intervals for the crude population estimated attributable fraction. 

chisquared test for difference in exposed and nonexposed proportions for each strata. 

chisquared test for difference in exposed and nonexposed proportions across all strata. 

MantelHaenszel chisquared test that the combined odds ratio estimate is equal to 1. 

MantelHaenszel (Woolf) test of homogeneity of the individual strata odds ratios. 
When method equals cross.sectional
the following measures of association and effect are returned:

Wald, Taylor and score confidence intervals for the prevalence ratios for each strata. Wald, Taylor and score confidence intervals for the crude prevalence ratio. Wald confidence interval for the MantelHaenszel adjusted prevalence ratio. 

Wald, score, Cornfield and maximum likelihood confidence intervals for the odds ratios for each strata. Wald, score, Cornfield and maximum likelihood confidence intervals for the crude odds ratio. Wald confidence interval for the MantelHaenszel adjusted odds ratio. 

Wald and score confidence intervals for the attributable risk for each strata. Wald and score confidence intervals for the crude attributable risk. Wald, Sato and GreenlandRobins confidence intervals for the MantelHaenszel adjusted attributable risk. 

Wald and Pirikahu confidence intervals for the population attributable risk for each strata. Wald and Pirikahu confidence intervals for the crude population attributable risk. 

Wald confidence intervals for the attributable fraction for each strata. Wald confidence intervals for the crude attributable fraction. 

Wald confidence intervals for the population attributable fraction for each strata. Wald confidence intervals for the crude population attributable fraction. 

chisquared test for difference in exposed and nonexposed proportions for each strata. 

chisquared test for difference in exposed and nonexposed proportions across all strata. 

MantelHaenszel chisquared test that the combined odds ratio estimate is equal to 1. 

MantelHaenszel (Woolf) test of homogeneity of the individual strata prevalence ratios. 

MantelHaenszel (Woolf) test of homogeneity of the individual strata odds ratios. 
The point estimates of the wald
, score
and cfield
odds ratios are calculated using the cross product method. Method mle
computes the conditional maximum likelihood estimate of the odds ratio.
Confidence intervals for the Cornfield (cfield
) odds ratios are computed using the hypergeometric distribution and computation times are extremely slow when the cell frequencies are large. For this reason, Cornfield confidence intervals are only calculated if the total number of event frequencies is less than 500. Maximum likelihood estimates of the odds ratio are only calculated when the total number of observations is less than 2E09.
If the HaldaneAnscombe (Haldane 1940, Anscombe 1956) correction is applied (i.e. addition of 0.5 to each cell of the 2 by 2 table when at least one of the cell frequencies is zero) Cornfield (cfield
) odds ratios are not computed.
The MantelHaenszel chisquared test that the combined odds ratio estimate is equal to 1 uses a twosided test without continuity correction.
Intepretive statements for the number needed to treat to benefit (NNTB) and number needed to treat to harm (NNTH) follow the approach described by Altman (1998). See the examples for details.
Measures of association include the prevalence ratio, the incidence risk ratio, the incidence rate ratio and the odds ratio. The incidence risk ratio is the ratio of the incidence risk of disease in the exposed group to the incidence risk of disease in the unexposed group. The odds ratio (also known as the crossproduct ratio) is an estimate of the incidence risk ratio. When the incidence of an outcome in the study population is low (say, less than 5%) the odds ratio will provide a reliable estimate of the incidence risk ratio. The more frequent the outcome becomes, the more the odds ratio will overestimate the incidence risk ratio when it is greater than than 1 or understimate the incidence risk ratio when it is less than 1.
Measures of effect in the exposed include the attributable risk (or prevalence) and the attributable fraction. The attributable risk is the risk of disease in the exposed group minus the risk of disease in the unexposed group. The attributable risk provides a measure of the absolute increase or decrease in risk associated with exposure. The attributable fraction is the proportion of study outcomes in the exposed group that is attributable to exposure.
Measures of effect in the population include the population attributable risk (or prevalence) and the population attributable fraction (also known as the aetiologic fraction). The population attributable risk is the risk of the study outcome in the population that may be attributed to exposure. The population attributable fraction is the proportion of the study outcomes in the population that is attributable to exposure.
Point estimates and confidence intervals for the prevalence ratio and incidence risk ratio are calculated using Wald (Wald 1943) and score methods (Miettinen and Nurminen 1985). Point estimates and confidence intervals for the incidence rate ratio are calculated using the exact method described by Kirkwood and Sterne (2003) and Juul (2004). Point estimates and confidence intervals the odds ratio are calculated using Wald (Wald 1943), score (Miettinen and Nurminen 1985) and maximum likelihood methods (Fleiss et al. 2003). Point estimates and confidence intervals for the population attributable risk are calculated using formulae provided by Rothman and Greenland (1998, p 271) and Pirikahu (2014). Point estimates and confidence intervals for the population attributable fraction are calculated using formulae provided by Jewell (2004, p 84  85). Point estimates and confidence intervals for the MantelHaenszel adjusted attributable risk are calculated using formulae provided by Klingenberg (2014).
Wald confidence intervals are provided in the summary table simply because they are widely used and would be familiar to most users.
The MantelHaenszel adjusted measures of association are valid when the measures of association across the different strata are similar (homogenous), that is when the test of homogeneity of the odds (risk) ratios is not significant.
The MantelHaenszel (Woolf) test of homogeneity of the odds ratio are based on Jewell (2004, p 152  158). Thanks to Jim RobisonCox for sharing his implementation of these functions.
Mark Stevenson (Faculty of Veterinary and Agricultural Sciences, The University of Melbourne, Australia), Cord Heuer (EpiCentre, IVABS, Massey University, Palmerston North, New Zealand), Jim RobisonCox (Department of Math Sciences, Montana State University, Montana, USA), Kazuki Yoshida (Brigham and Women's Hospital, Boston Massachusetts, USA) and Simon Firestone (Faculty of Veterinary and Agricultural Sciences, The University of Melbourne, Australia). Thanks to Ian Dohoo for numerous helpful suggestions to improve the documentation for this function.
Altman D (1998). British Medical Journal 317, 1309  1312.
Altman D, Machin D, Bryant T, Gardner M (2000). Statistics with Confidence. British Medical Journal, London, pp. 69.
Anscombe F (1956). On estimating binomial response relations. Biometrika 43, 461  464.
Cornfield, J (1956). A statistical problem arising from retrospective studies. In: Proceedings of the Third Berkeley Symposium on Mathematical Statistics and Probability, University of California Press, Berkeley California 4: 135  148.
Elwood JM (2007). Critical Appraisal of Epidemiological Studies and Clinical Trials. Oxford University Press, London.
Feinstein AR (2002). Principles of Medical Statistics. Chapman Hall/CRC, London, pp. 332  336.
Fisher RA (1962). Confidence limits for a crossproduct ratio. Australian Journal of Statistics 4: 41.
Feychting M, Osterlund B, Ahlbom A (1998). Reduced cancer incidence among the blind. Epidemiology 9: 490  494.
Fleiss JL, Levin B, Paik MC (2003). Statistical Methods for Rates and Proportions. John Wiley and Sons, New York.
Haldane J (1940). The mean and variance of the moments of chi square, when used as a test of homogeneity, when expectations are small. Biometrika 29, 133  143.
Hanley JA (2001). A heuristic approach to the formulas for population attributable fraction. Journal of Epidemiology and Community Health 55: 508  514.
Hightower AW, Orenstein WA, Martin SM (1988) Recommendations for the use of Taylor series confidence intervals for estimates of vaccine efficacy. Bulletin of the World Health Organization 66: 99  105.
Jewell NP (2004). Statistics for Epidemiology. Chapman & Hall/CRC, London, pp. 84  85.
Juul S (2004). Epidemiologi og evidens. Munksgaard, Copenhagen.
Kirkwood BR, Sterne JAC (2003). Essential Medical Statistics. Blackwell Science, Malden, MA, USA.
Klingenberg B (2014). A new and improved confidence interval for the MantelHaenszel risk difference. Statistics in Medicine 33: 2968  2983.
Lancaster H (1961) Significance tests in discrete distributions. Journal of the American Statistical Association 56: 223  234.
Lawson R (2004). Small sample confidence intervals for the odds ratio. Communications in Statistics Simulation and Computation 33: 1095  1113.
Martin SW, Meek AH, Willeberg P (1987). Veterinary Epidemiology Principles and Methods. Iowa State University Press, Ames, Iowa, pp. 130.
McNutt L, Wu C, Xue X, Hafner JP (2003). Estimating the relative risk in cohort studies and clinical trials of common outcomes. American Journal of Epidemiology 157: 940  943.
Miettinen OS, Nurminen M (1985). Comparative analysis of two rates. Statistics in Medicine 4: 213  226.
Pirikahu S (2014). Confidence Intervals for Population Attributable Risk. Unpublished MSc thesis. Massey University, Palmerston North, New Zealand.
Robbins AS, Chao SY, Fonesca VP (2002). What's the relative risk? A method to directly estimate risk ratios in cohort studies of common outcomes. Annals of Epidemiology 12: 452  454.
Rothman KJ (2002). Epidemiology An Introduction. Oxford University Press, London, pp. 130  143.
Rothman KJ, Greenland S (1998). Modern Epidemiology. Lippincott Williams, & Wilkins, Philadelphia, pp. 271.
Sullivan KM, Dean A, Soe MM (2009). OpenEpi: A Webbased Epidemiologic and Statistical Calculator for Public Health. Public Health Reports 124: 471  474.
Wald A (1943). Tests of statistical hypotheses concerning several parameters when the number of observations is large. Transactions of the American Mathematical Society 54: 426  482.
Willeberg P (1977). Animal disease information processing: Epidemiologic analyses of the feline urologic syndrome. Acta Veterinaria Scandinavica. Suppl. 64: 1  48.
Woodward MS (2005). Epidemiology Study Design and Data Analysis. Chapman & Hall/CRC, New York, pp. 163  214.
Zhang J, Yu KF (1998). What's the relative risk? A method for correcting the odds ratio in cohort studies of common outcomes. Journal of the American Medical Association 280: 1690  1691.
## EXAMPLE 1: ## A cross sectional study investigating the relationship between dry cat ## food (DCF) and feline urologic syndrome (FUS) was conducted (Willeberg ## 1977). Counts of individuals in each group were as follows: ## DCFexposed cats (cases, noncases) 13, 2163 ## Non DCFexposed cats (cases, noncases) 5, 3349 ## Outcome variable (FUS) as columns: dat.v01 < c(13,2163,5,3349); dat.v01 epi.2by2(dat = dat.v01, method = "cross.sectional", conf.level = 0.95, units = 100, interpret = FALSE, outcome = "as.columns") ## Outcome variable (FUS) as rows: dat.v01 < c(13,5,2163,3349); dat.v01 epi.2by2(dat = dat.v01, method = "cross.sectional", conf.level = 0.95, units = 100, interpret = FALSE, outcome = "as.rows") ## The prevalence of FUS in DCF exposed cats was 4.01 (95% CI 1.43 to 11.23) ## times greater than the prevalence of FUS in nonDCF exposed cats. ## In DCF exposed cats, 75% (95% CI 30% to 91%) of the FUS cases were ## attributable to DCF. ## Fiftyfour percent of FUS cases in the population was attributable ## to DCF (95% CI 4% to 78%). ## EXAMPLE 2: ## This example shows how the table function in base R can be used to pass ## data to epi.2by2. Here we use the birthwt data set from the MASS package. library(MASS) dat.df02 < birthwt; head(dat.df02) ## Generate a table of cell frequencies. First, set the outcome and exposure ## as factors and set their levels appropriately so the frequencies in the ## 2 by 2 table come out in the conventional format: dat.df02$low < factor(dat.df02$low, levels = c(1,0)) dat.df02$smoke < factor(dat.df02$smoke, levels = c(1,0)) dat.df02$race < factor(dat.df02$race, levels = c(1,2,3)) dat.tab02 < table(dat.df02$smoke, dat.df02$low, dnn = c("Smoke", "Low BW")) print(dat.tab02) ## Compute the odds ratio and other measures of association: epi.2by2(dat = dat.tab02, method = "cohort.count", conf.level = 0.95, units = 100, interpret = FALSE, outcome = "as.columns") ## The odds of having a low birth weight child for smokers was 2.02 ## (95% CI 1.08 to 3.78) times greater than the odds of having a low birth ## weight child for nonsmokers. ## Stratify by race: dat.tab02 < table(dat.df02$smoke, dat.df02$low, dat.df02$race, dnn = c("Smoke", "Low BW", "Race")) print(dat.tab02) ## Compute the crude odds ratio, the MantelHaenszel adjusted odds ratio ## and other measures of association: dat.epi02 < epi.2by2(dat = dat.tab02, method = "cohort.count", conf.level = 0.95, units = 100, interpret = FALSE, outcome = "as.columns") print(dat.epi02) ## The MantelHaenszel test of homogeneity of the strata odds ratios is not ## significant (chi square test statistic 2.800; df 2; pvalue = 0.25). ## We accept the null hypothesis and conclude that the odds ratios for ## each strata of race are the same. ## After accounting for the confounding effect of race, the odds of ## having a low birth weight child for smokers was 3.09 (95% CI 1.49 to 6.39) ## times that of nonsmokers. ## Compare the GreenlandRobins confidence intervals for the MantelHaenszel ## adjusted attributable risk with the Wald confidence intervals for the ## MantelHaenszel adjusted attributable risk: dat.epi02$massoc.detail$ARisk.mh.green dat.epi02$massoc.detail$ARisk.mh.wald ## How many mothers need to stop smoking to avoid one low birth weight baby? dat.epi02$massoc.interp$text[dat.epi02$massoc.interp$var == "NNTB NNTH (crude)"] ## If we don't account for confounding the number of mothers that need to ## stop smoking to avoid one low birth weight baby (NNTB) is ## 7 (95% CI 3 to 62). dat.epi02$massoc.interp$text[dat.epi02$massoc.interp$var == "NNTB NNTH (MH)"] ## After accounting for the confounding effect of race the number of mothers ## that need to stop smoking to avoid one low birth weight baby (NNTB) is ## 5 (95% CI 2 to 71). ## Now turn dat.tab02 into a data frame where the frequencies of individuals in ## each exposureoutcome category are provided. Often your data will be ## presented in this summary format: dat.df02 < data.frame(dat.tab02); head(dat.df02) ## Reformat dat.df02 (a summary count data frame) into tabular format using ## the xtabs function: dat.tab02 < xtabs(Freq ~ Smoke + Low.BW + Race, data = dat.df02) print(dat.tab02) # dat02.tab can now be passed to epi.2by2: dat.epi02 < epi.2by2(dat = dat.tab02, method = "cohort.count", conf.level = 0.95, units = 100, interpret = FALSE, outcome = "as.columns") print(dat.epi02) ## The MantelHaenszel adjusted odds ratio is 3.09 (95% CI 1.49 to 6.39). The ## ratio of the crude odds ratio to the MantelHaensel adjusted odds ratio is ## 0.66. ## What are the Cornfield confidence limits, the maximum likelihood ## confidence limits and the score confidence limits for the crude odds ratio? dat.epi02$massoc.detail$OR.crude.cfield dat.epi02$massoc.detail$OR.crude.mle dat.epi02$massoc.detail$OR.crude.score ## Cornfield: 2.02 (95% CI 1.07 to 3.79) ## Maximum likelihood: 2.01 (1.03 to 3.96) # Score: 2.02 (95% CI 1.08 to 3.77) ## Plot the individual stratalevel odds ratios and compare them with the ## MantelHaenszel adjusted odds ratio. ## Not run: library(ggplot2); library(scales) nstrata < 1:dim(dat.tab02)[3] strata.lab < paste("Strata ", nstrata, sep = "") y.at < c(nstrata, max(nstrata) + 1) y.lab < c("MH", strata.lab) x.at < c(0.25,0.5,1,2,4,8,16,32) or.p < c(dat.epi02$massoc.detail$OR.mh$est, dat.epi02$massoc.detail$OR.strata.cfield$est) or.l < c(dat.epi02$massoc.detail$OR.mh$lower, dat.epi02$massoc.detail$OR.strata.cfield$lower) or.u < c(dat.epi02$massoc.detail$OR.mh$upper, dat.epi02$massoc.detail$OR.strata.cfield$upper) dat.df02 < data.frame(y.at, y.lab, or.p, or.l, or.u) ggplot(data = dat.df02, aes(x = or.p, y = y.at)) + geom_point() + geom_errorbarh(aes(xmax = or.l, xmin = or.u, height = 0.2)) + labs(x = "Odds ratio", y = "Strata") + scale_x_continuous(trans = log2_trans(), breaks = x.at, limits = c(0.25,32)) + scale_y_continuous(breaks = y.at, labels = y.lab) + geom_vline(xintercept = 1, lwd = 1) + coord_fixed(ratio = 0.75 / 1) + theme(axis.title.y = element_text(vjust = 0)) ## End(Not run) ## EXAMPLE 3: ## Same as Example 2 but showing how a 2 by 2 contingency table can be prepared ## using tidyverse: ## Not run: library(MASS); library(tidyverse) dat.df03 < birthwt; head(dat.df03) dat.tab03 < dat.df03 %>% mutate(low = factor(low, levels = c(1,0), labels = c("yes","no"))) %>% mutate(smoke = factor(smoke, levels = c(1,0), labels = c("yes","no"))) %>% mutate(race = factor(race)) %>% group_by(race, smoke, low) %>% summarise(n = n()) dat.tab03 ## View the data in conventional 2 by 2 table format: pivot_wider(dat.tab03, id_cols = c(race, smoke), names_from = low, values_from = n) dat.epi03 < epi.2by2(dat = dat.tab03, method = "cohort.count", conf.level = 0.95, units = 100, interpret = FALSE, outcome = "as.columns") dat.epi03 ## End(Not run) ## The MantelHaenszel test of homogeneity of the strata odds ratios is not ## significant (chi square test statistic 2.800; df 2; pvalue = 0.25). ## We accept the null hypothesis and conclude that the odds ratios for ## each strata of race are the same. ## After accounting for the confounding effect of race, the odds of ## having a low birth weight child for smokers was 3.09 (95% CI 1.49 to 6.39) ## times that of nonsmokers. ## EXAMPLE 4: ## A study was conducted by Feychting et al (1998) comparing cancer occurrence ## among the blind with occurrence among those who were not blind but had ## severe visual impairment. From these data we calculate a cancer rate of ## 136/22050 personyears among the blind compared with 1709/127650 person ## years among those who were visually impaired but not blind. dat.v04 < c(136,22050,1709,127650) dat.epi04 < epi.2by2(dat = dat.v04, method = "cohort.time", conf.level = 0.95, units = 1000, interpret = FALSE, outcome = "as.columns") summary(dat.epi04)$massoc.detail$ARate.strata.wald ## The incidence rate of cancer was 7.22 (95% CI 6.00 to 8.43) cases per ## 1000 personyears less in the blind, compared with those who were not ## blind but had severe visual impairment. round(summary(dat.epi04)$massoc.detail$IRR.strata.wald, digits = 2) ## The incidence rate of cancer in the blind group was less than half that ## of the comparison group (incidence rate ratio 0.46, 95% CI 0.38 to 0.55). ## EXAMPLE 5: ## A study has been conducted to assess the effect of a new treatment for ## mastitis in dairy cows. Eight herds took part in the study. The following ## data were obtained. The vectors ai, bi, ci and di list (for each herd) the ## number of cows in the E+D+, E+D, ED+ and ED groups, respectively. ## Not run: hid < 1:8 ai < c(23,10,20,5,14,6,10,3) bi < c(10,2,1,2,2,2,3,0) ci < c(3,2,3,2,1,3,3,2) di < c(6,4,3,2,6,3,1,1) dat.df05 < data.frame(hid, ai, bi, ci, di) head(dat.df05) ## Reformat data into a format suitable for epi.2by2: hid < rep(1:8, times = 4) exp < factor(rep(c(1,1,0,0), each = 8), levels = c(1,0)) out < factor(rep(c(1,0,1,0), each = 8), levels = c(1,0)) dat.df05 < data.frame(hid, exp, out, n = c(ai,bi,ci,di)) dat.tab05 < xtabs(n ~ exp + out + hid, data = dat.df05) print(dat.tab05) epi.2by2(dat = dat.tab05, method = "cohort.count", conf.level = 0.95, units = 1000, interpret = FALSE, outcome = "as.columns") ## The MantelHaenszel test of homogeneity of the strata odds ratios is not ## significant (chi square test statistic 5.276; df 7; pvalue = 0.63). ## We accept the null hypothesis and conclude that the odds ratios for each ## strata of herd are the same. ## After adjusting for the effect of herd, compared to untreated cows, treatment ## increased the odds of recovery by a factor of 5.97 (95% CI 2.72 to 13.13). ## End(Not run)