snp.lhs.tests: Score tests with SNP genotypes as dependent variable

Description Usage Arguments Details Value Note Author(s) References See Also Examples

View source: R/glm_test.R

Description

Under the assumption of Hardy-Weinberg equilibrium, a SNP genotype is a binomial variate with two trials for an autosomal SNP or with one or two trials (depending on sex) for a SNP on the X chromosome. With each SNP in an input "snp.matrix" as dependent variable, this function first fits a "base" logistic regression model and then carries out a score test for the addition of further term(s). The Hardy-Weinberg assumption can be relaxed by use of a "robust" option.

Usage

1
2
3
snp.lhs.tests(snp.data, base.formula, add.formula, subset, snp.subset,
              data = sys.parent(), robust = FALSE,
              control=glm.test.control(maxit=20, epsilon=1.e-4, R2Max=0.98))

Arguments

snp.data

The SNP data, as an object of class "snp.matrix" or "X.snp.matrix"

base.formula

A formula object describing the base model, with dependent variable omitted

add.formula

A formula object describing the additional terms to be tested, also with dependent variable omitted

subset

An array describing the subset of observations to be considered

snp.subset

An array describing the subset of SNPs to be considered. Default action is to test all SNPs.

data

The data frame in which base.formula, add.formula and subset are to be evaluated

robust

If TRUE, a test which does not assume Hardy-Weinberg equilibrium will be used

control

An object giving parameters for the IRLS algorithm fitting of the base model and for the acceptable aliasing amongst new terms to be tested. See\ codeglm.test.control

Details

The tests used are asymptotic chi-squared tests based on the vector of first and second derivatives of the log-likelihood with respect to the parameters of the additional model. The "robust" form is a generalized score test in the sense discussed by Boos(1992). If a data argument is supplied, the snp.data and data objects are aligned by rowname. Otherwise all variables in the model formulae are assumed to be stored in the same order as the columns of the snp.data object.

Value

A data frame containing, for each SNP,

Chi.squared

The value of the chi-squared test statistic

Df

The corresponding degrees of freedom

Df.residual

The residual degrees of freedom for the base model; i.e. the number of observations minus the number of parameters fitted

For the logistic model, the base model can, in some circumstances, lead to perfect prediction of some observations (i.e. fitted probabilities of 0 or 1). These observations are ignored in subsequent calculations; in particular they are not counted in the residual degrees of freedom.

Note

A factor (or several factors) may be included as arguments to the function strata(...) in the base.formula. This fits all interactions of the factors so included, but leads to faster computation than fitting these in the normal way. Additionally, a cluster(...) call may be included in the base model formula. This identifies clusters of potentially correlated observations (e.g. for members of the same family); in this case, an appropriate robust estimate of the variance of the score test is used.

Author(s)

David Clayton david.clayton@cimr.cam.ac.uk

References

Boos, Dennis D. (1992) On generalized score tests. The American Statistician, 46:327-333.

See Also

glm.test.control,snp.rhs.tests single.snp.tests, snp.matrix-class, X.snp.matrix-class

Examples

1
2
3
4
5
6
7
data(testdata)
library(survival)
slt1 <- snp.lhs.tests(Autosomes[,1:10], ~cc, ~region, data=subject.data)
print(slt1)
slt2 <- snp.lhs.tests(Autosomes[,1:10], ~strata(region), ~cc,
                      data=subject.data)
print(slt2)

chopsticks documentation built on Nov. 8, 2020, 7:51 p.m.