ASCORE: Adaptive Score Test

Share:

Description

The Adaptive Score test has been proposed by Hand and Pan (2010) in an attempt to overcome some of the drawbacks of the Score test (from logistic regression) by extending the idea of the adaptive Neymans test. The approach behind the adaptive test is to use the the first components of the U-score vector in order to construct a test statistic

Usage

1
2
3
  ASCORE(y, X, perm = 100)

  ASCORE.Ord(y, X, perm = 100)

Arguments

y

numeric vector with phenotype status: 0=controls, 1=cases. No missing data allowed

X

numeric matrix or data frame with genotype data coded as 0, 1, 2. Missing data is allowed

perm

positive integer indicating the number of permutations (100 by default)

Details

ASCORE gives the normal (unordered) test.
ASCORE.Ord gives the ordered (decreasing) test.

There is no imputation for the missing data. Missing values are simply ignored in the computations.

Value

An object of class "assoctest", basically a list with the following elements:

ascore.stat

ascore statistic

perm.pval

permuted p-value

args

descriptive information with number of controls, cases, variants, and permutations

name

name of the statistic

Author(s)

Gaston Sanchez

References

Han F, Pan W (2010) A Data-Adaptive Sum Test for Disease Association with Multiple Common or Rare Variants. Human Heredity, 70: 42-54

Pan W, Shen X (2011) Adaptive Tests for Association of Rare Variants. Genetic Epidemiology, 35: 381-388

See Also

SCORE

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
  ## Not run: 
   
  # number of cases
  cases = 500

  # number of controls
  controls = 500

  # total (cases + controls)
  total = cases + controls

  # phenotype vector
  phenotype = c(rep(1, cases), rep(0, controls))

  # genotype matrix with 10 variants (random data)
  set.seed(123)
  genotype = matrix(rbinom(total*10, 2, 0.05), nrow=total, ncol=10)

  # apply ASCORE with 500 permutations
  myascore = ASCORE(phenotype, genotype, perm=500)
  myascore

  # apply ASCORE.Ord with 500 permutations
  myascoreord = ASCORE.Ord(phenotype, genotype, perm=500)
  myascoreord
  
## End(Not run)