Learn R Programming

smatr (version 2.1)

slope.test: One-sample test of a (standardised) major axis slope

Description

Test if the slope of a major axis or standardised major axis equals a specific value

Usage

slope.test(y, x, test.value = 1, data=NULL, method = SMA,
        alpha = 0.05, V = matrix(0,2,2), intercept = TRUE )

Arguments

y
The Y-variable
x
The X-variable
test.value
The hypothesised value of the slope (default value is 1)
data
(optional) data frame containing the data
method
The line fitting method: [object Object],[object Object],[object Object]
alpha
The desired confidence level for the 100(1-alpha)% confidence interval for the common slope. (Default value is 0.05, which returns a 95% confidence interval.)
V
The estimated variance matrix of measurement error. Average measurement error for Y is in the first row and column, and average measurement error for X is in the second row and column. The default is that there is no measurement error.
intercept
(logical) Whether or not the line includes an intercept. [object Object],[object Object]

Value

  • rThe test statistic - the sample correlation between residuals and fitted values
  • pThe P-value, taken from the F-distribution. This is an exact test if residuals are normally distributed.
  • test.valueThe hypothesised value of the slope
  • bThe estimated slope
  • ciA 100(1-alpha)% CI for the slope.

Details

Tests if the line relating y to x has a slope equal to test.value (which has a default value of 1). The line can be a linear regression line, major axis or standardised major axis (as selected using the input argument choice). The test is carried out by testing for correlation between residual and fitted values, as described in Warton et al (in review).

A confidence interval for the slope is also returned, which is the primary confidence interval found by inverting the one-sample test statistic.

If measurement error is present, it can be corrected for through use of the input argument V, which makes adjustments to the estimated sample variances and covariances then proceeds with the same method of inference. Note, however, that this method is only approximate (see Warton et al in review for more details).

The test assumes the following:

  1. y and x are linearly related
  2. residuals independently follow a normal distribution with equal variance at all points along the line

These assumptions can be visually checked by plotting residuals against fitted axis scores, and by constructing a Q-Q plot of residuals against a normal distribution. An appropriate residual variable is y-bx, and for fitted axis scores use x (for linear regression), y+bx (for SMA) or by+x (for MA), where b represents the estimated slope.

Reference - Warton D. I., Wright I. J., Falster D. S. and Westoby M. (2006) A review of bivariate line-fitting methods for allometry. Biological Reviews (in press)

See Also

line.cis, elev.test

Examples

Run this code
#load the leaflife dataset:
data(leaflife)

#consider only the low rainfall sites:
leaf.low.rain=leaflife[leaflife$rain=='low',]

#test if the SMA slope amongst species at low rainfall sites is 1,
#for log (base 10) transformed data:
slope.test(log10(longev), log10(lma), data=leaf.low.rain)
    
#test if the MA slope is 2/3
slope.test(log10(longev), log10(lma), data=leaf.low.rain,
   test.value = 2/3, method = 'MA')

Run the code above in your browser using DataLab