View source: R/jointScoreTest.R
jointScoreTest | R Documentation |
jointScoreTest
is used to perform a joint score test of a set of variants using a null model and a matrix of genotype dosages.
jointScoreTest(null.model, G)
null.model |
A null model object returned by |
G |
A matrix of genotype dosages, where samples are the rows and variants are the columns. |
jointScoreTest
takes the object returned by fitNullModel
and performs a joint score test for all variants in the G
matrix using this null model.
All effect size and PVE estimates in fixef
are adjusted for (i.e. conditional on) all other variants included in G
.
The G
matrix must be formatted such that the rows are samples and the columns are variants, and the entries are the dosage for that sample and variant.
The matrix must have sample.id
as rownames; this is used to match the genotypes to the null model.
Therefore, the same sample identifiers must be used in both null.model
and G
.
G
can contain additional samples and ordering is unimportant as long as all samples from the null model are present; it will be subset and reordered to match the set of samples in the null model.
Colnames for G
are not required.
If present, the column names of G
will be used as the rownames of the fixef
element and the column and rownames of the betaCov
element of the output.
fixef
and betaCov
will be in the same order as the columns in G
.
Missing data in G
are not allowed.
p-values that are calculated using pchisq
and are smaller than .Machine\$double.xmin
are set to .Machine\$double.xmin
.
jointScoreTest
returns a list with the following elements:
Joint.Stat |
Squared joint score test statistic for all variants in |
Joint.pval |
p-value associated with the joint score test statistic drawn from a
distribution with |
Joint.PVE |
Estimate of the proportion of variance explained jointly by the variants in |
fixef |
A data.frame with joint effect size estimates (Est), standard errors (SE), chi-squared test statistics (Stat), p-values (pval), and estimated proportion of variance explained (PVE) for each of the variants specified in |
betaCov |
Estimated covariance matrix for the variants in |
Adrienne M. Stilp, Matthew P. Conomos
fitNullModel
for fitting the mixed model and performing the variance component estimation.
GenotypeData
and SeqVarData
for obtaining genotype matrices.
library(GWASTools)
# File path to GDS file
gdsfile <- system.file("extdata", "HapMap_ASW_MXL_geno.gds", package="GENESIS")
# Read in GDS data
HapMap_geno <- GdsGenotypeReader(filename = gdsfile)
# Create a GenotypeData class object
HapMap_genoData <- GenotypeData(HapMap_geno)
# Prepare genotypes for the first five SNPs and the first 20 samples.
# Transpose it so that samples are rows and SNPs are columns.
geno <- t(getGenotype(HapMap_genoData, snp = c(1, 5), scan = c(1, 20)))
# Set row and column names.
rownames(geno) <- as.character(GWASTools::getScanID(HapMap_genoData))[1:20]
colnames(geno) <- sprintf("snp%s", 1:5)
# Create a phenotype
set.seed(5)
phen <- data.frame(
outcome = rnorm(1:20),
covar = rnorm(1:20),
stringsAsFactors = FALSE
)
rownames(phen) <- rownames(geno)
# load saved matrix of KING-robust estimates
data("HapMap_ASW_MXL_KINGmat")
cov.mat = HapMap_ASW_MXL_KINGmat[rownames(phen), rownames(phen)]
# Fit a null model.
nullmod <- fitNullModel(phen,
outcome = "outcome",
covars = "covar",
cov.mat = cov.mat)
# Run the joint score test.
jointScoreTest(nullmod, geno)
close(HapMap_genoData)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.