Learn R Programming

metafor (version 1.4-0)

rma.peto: Meta-Analysis via Peto's Method

Description

Function to fit a fixed-effects model for data from 2x2 tables via Peto's method.

Usage

rma.peto(ai, bi, ci, di, n1i, n2i, data, 
         slab=NULL, subset=NULL, 
         add=c(1/2,0), to=c("only0","none"), level=95, digits=4)

Arguments

ai
vector to specify the 2x2 table frequencies (upper left cell). See below and the documentation of the escalc function for more details.
bi
vector to specify the 2x2 table frequencies (upper right cell). See below and the documentation of the escalc function for more details.
ci
vector to specify the 2x2 table frequencies (lower left cell). See below and the documentation of the escalc function for more details.
di
vector to specify the 2x2 table frequencies (lower right cell). See below and the documentation of the escalc function for more details.
n1i
vector to specify the group sizes or row totals (first group). See below and the documentation of the escalc function for more details.
n2i
vector to specify the group sizes or row totals (second group). See below and the documentation of the escalc function for more details.
data
an optional data frame containing the variables given to the arguments above.
slab
an optional vector with unique labels for the $k$ studies.
subset
an optional vector indicating the subset of tables that should be used for the analysis. This can be a logical vector of length $k$ or a numeric vector indicating the indices of the tables to include.
add
vector with two numbers indicating the amount to add to the cell frequencies of the 2x2 table. The first number is used in the calculation of the individual outcomes, the second number is used when applying Peto's method. See below and the documentation o
to
a character vector with two strings indicating when the values under add should be added. When set to "all", the value of add is added to each cell of the 2x2 tables in all $k$ tables. When set to "only0"
level
a numerical value between 0 and 100 specifying the confidence interval level (default is 95).
digits
an integer specifying the number of decimal places to which the printed results should be rounded (default is 4).

Value

  • An object of class c("rma.peto","rma"). The object is a list containing the following components:
  • baggregated log odds ratio.
  • sestandard error of the aggregated value.
  • zvaltest statistics of the aggregated value.
  • pvalp-value for the test statistic.
  • ci.lblower bound of the confidence interval.
  • ci.ubupper bound of the confidence interval.
  • QEtest statistic for the test of heterogeneity.
  • QEpp-value for the test of heterogeneity.
  • knumber of tables included in the analysis.
  • yi, vithe vector of individual log odds ratios and corresponding sampling variances.
  • fit.statsa list with the log likelihood, deviance, AIC, and BIC values under the unrestricted and restricted likelihood.
  • ...some additional elements/values.
  • The results of the fitted model are neatly formated and printed with the print.rma.peto function. If you also want the fit statistics, use summary.rma (or use the fitstats.rma function to extract them). The residuals.rma, rstandard.rma.peto, and rstudent.rma.peto functions extract raw and standardized residuals. Leave-one-out diagnostics can be obtained with leave1out.rma.peto. Forest, funnel, and radial plots of the individual outcomes can be obtained with forest.rma, funnel.rma, and radial.rma. The qqnorm.rma.peto function provides a normal QQ plot of the standardized residuals. One can also just call plot.rma.peto on the fitted model object to obtain various plots at once. A cumulative meta-analysis (i.e., adding one obervation at a time) can be obtained with cumul.rma.peto. Other assessor functions include coef.rma, vcov.rma, logLik.rma, deviance.rma, AIC.rma, and BIC.rma.

Details

The studies providing data in terms of 2x2 tables are assumed to be of the form: lccc{ outcome 1 outcome 2 total group 1 ai bi n1i group 2 ci di n2i } where ai, bi, ci, and di denote the cell frequencies and n1i and n2i the row totals. For example, in a set of RCTs, group 1 and group 2 may refer to the treatment and placebo group, with outcome 1 denoting some event of interest and outcome 2 its complement. In a set of case-control studies, group 1 and group 2 may refer to the group of cases and the group of controls, with outcome 1 denoting, for example, exposure to some risk factor and outcome 2 non-exposure. An approach for aggregating 2x2 table data of this type was suggested by Peto (see Yusuf et al., 1985). The method provides a weighted estimate of the log odds ratio under a fixed-effects model. Note that the printed results are given both in terms of the log and the raw units (for easier interpretation). The method itself does not require the calculation of the individual log odds ratios and directly makes use of the 2x2 table counts. Zero cells are not a problem (except in extreme cases, such as when one of the two outcomes never occurs in any of the tables). Therefore, it is also unnecessary to add some constant to the cell counts when there are zero cells. However, for plotting and various other functions, it is necessary to calculate the individual log odds ratios for the $k$ tables. Here, zero cells can be problematic, so adding a constant value to the cell counts ensures that all $k$ values can be calculated. The add and to arguments are used to specify what value should be added to the 2x2 cell frequencies and under what circumstances when calculating the individual log odds ratios and when applying Peto's method.

References

Yusuf, S., Peto, R., Lewis, J., Collins, R. & Sleight, P. (1985). Beta blockade during and after myocardial infarction: An overview of the randomized trials. Progress in Cardiovascular Disease, 27, 335--371. Viechtbauer, W. (2010). Conducting meta-analyses in R with the metafor package. Journal of Statistical Software, 36(3), 1--48. http://www.jstatsoft.org/v36/i03/.

Examples

Run this code
### load BCG vaccine data
data(dat.bcg)

### meta-analysis of the (log) odds ratios using Peto's method
rma.peto(ai=tpos, bi=tneg, ci=cpos, di=cneg, data=dat.bcg)

Run the code above in your browser using DataLab