R: Multiple regression through the origin

lmorigin {ape} | R Documentation

## Multiple regression through the origin

### Description

Function `lmorigin` computes a multiple linear regression and performs tests of significance of the equation parameters (F-test of R-square and t-tests of regression coefficients) using permutations.

The regression line can be forced through the origin. Testing the significance in that case requires a special permutation procedure. This option was developed for the analysis of independent contrasts, which requires regression through the origin. A permutation test, described by Legendre & Desdevises (2009), is needed to analyze contrasts that are not normally distributed.

### Usage

    lmorigin(formula, data, origin=TRUE, nperm=999, method=NULL, silent=FALSE)

### Arguments

`formula` | A formula specifying the bivariate model, as in `lm` and `aov`.
`data` | A data frame containing the two variables specified in the formula.
`origin` | `origin = TRUE` (default) to compute regression through the origin; `origin = FALSE` to compute multiple regression with estimation of the intercept.
`nperm` | Number of permutations for the tests. If `nperm = 0`, permutation tests will not be computed. The default value is `nperm = 999`. For large data files, the permutation test is rather slow since the permutation procedure is not compiled.
`method` | `method = "raw"` computes t-tests of the regression coefficients by permutation of the raw data. `method = "residuals"` computes t-tests of the regression coefficients by permutation of the residuals of the full model. If `method = NULL`, permutation of the raw data is used to test the regression coefficients in regression through the origin; permutation of the residuals of the full model is used to test the regression coefficients in ordinary multiple regression.
`silent` | Informative messages and the time to compute the tests will not be written to the R console if silent=TRUE. Useful when the function is called by a numerical simulation function.

### Details

The permutation F-test of R-square is always done by permutation of the raw data. When there is a single explanatory variable, permutation of the raw data is used for the t-test of the single regression coefficient, whatever the method chosen by the user. The rationale is found in Anderson & Legendre (1999).

The `print.lmorigin` function prints out the results of the parametric tests (in all cases) and the results of the permutational tests (when nperm > 0).

### Value

`reg` | The regression output object produced by function `lm`.
`p.param.t.2tail` | Parametric probabilities for 2-tailed tests of the regression coefficients.
`p.param.t.1tail` | Parametric probabilities for 1-tailed tests of the regression coefficients. Each test is carried out in the direction of the sign of the coefficient.
`p.perm.t.2tail` | Permutational probabilities for 2-tailed tests of the regression coefficients.
`p.perm.t.1tail` | Permutational probabilities for 1-tailed tests of the regression coefficients. Each test is carried out in the direction of the sign of the coefficient.
`p.perm.F` | Permutational probability for the F-test of R-square.
`origin` | TRUE is regression through the origin has been computed, FALSE if multiple regression with estimation of the intercept has been used.
`nperm` | Number of permutations used in the permutation tests.
`method` | Permutation method for the t-tests of the regression coefficients: `method = "raw"` or `method = "residuals"`.
`var.names` | Vector containing the names of the variables used in the regression.
`call` | The function call.

### Author(s)

Pierre Legendre, Universite de Montreal

### References

Anderson, M. J. and Legendre, P. (1999) An empirical comparison of permutation methods for tests of partial regression coefficients in a linear model. Journal of Statistical Computation and Simulation, 62, 271–303.

Legendre, P. and Desdevises, Y. (2009) Independent contrasts and regression through the origin. Journal of Theoretical Biology, 259, 727–743.

Sokal, R. R. and Rohlf, F. J. (1995) Biometry - The principles and practice of statistics in biological research. Third edition. New York: W. H. Freeman.

### Examples

    ## Example 1 from Sokal & Rohlf (1995) Table 16.1
    ## SO2 air pollution in 41 cities of the USA
    data(lmorigin.ex1)
    out <- lmorigin(SO2 ~ ., data=lmorigin.ex1, origin=FALSE, nperm=99)
    out

    ## Example 2: Contrasts computed on the phylogenetic tree of Lamellodiscus
    ## parasites. Response variable: non-specificity index (NSI); explanatory
    ## variable: maximum host size. Data from Table 1 of Legendre & Desdevises
    ## (2009).
    data(lmorigin.ex2)
    out <- lmorigin(NSI ~ MaxHostSize, data=lmorigin.ex2, origin=TRUE, nperm=99)
    out

    ## Example 3: random numbers
    y <- rnorm(50)
    X <- as.data.frame(matrix(rnorm(250),50,5))
    out <- lmorigin(y ~ ., data=X, origin=FALSE, nperm=99)
    out

[Package ape version 5.6 Index]