Learn R Programming

NanoStringDiff (version 1.2.0)

glm.LRT: perform gene-wise likelihood ratio test for NanoString Data

Description

The method considers a generalized linear model of the negative binomial family to characterize count data and allows for multi-factor design. The method propose an empirical Bayes shrinkage approach to estimate the dispersion parameter and use likelihood ratio test to obtain p-value.

Usage

glm.LRT(NanoStringData,design.full,Beta=ncol(design.full), contrast=NULL)

Arguments

NanoStringData
An object of "NanoStringSet" class.
design.full
numeric matrix giving the design matrix for the generalized linear models under full model. must be of full column rank.
Beta
integer or character vector indicating which coefficients of the linear model are to be tested equal to zero. Values must be columns or column names of design. Defaults to the last coefficient. Ignored if contrast is specified.
contrast
numeric vector or matrix specifying one or more contrasts of the linear model coefficients to be tested equal to zero.

Value

A list
table
A data frame with each row corresponding to a gene. Rows are sorted according to likelihood ratio test statistics. The columns are: logFC: log fold change between two groups. lr: likelihood ratio test statictics. pvalue: p-value. qvalue: adjust p-value using the procedure of Benjamini and Hochberg.
dispersion
a vertor of dispersion
log.dispersion
a vector of log dispersion: log.dispersion=log(dispersion)
design.full
numeric matrix giving the design matrix under full generalizedlinear model.
design.reduce
numeric matrix giving the design matrix under reduced generalizedlinear model.
Beta.full
coefficients under full model.
mean.full
mean value under full model.
Beta.reduce
coefficients under reduced model.
mean.reduce
mean value under reduced model.
m0
hyper-parameter: mean value of the prior distribution of log dispersion
sigma
hyper-parameter: standard deviation of the prior distribution of log dispersion

Examples

Run this code
data(NanoStringData)
NanoStringData=estNormalizationFactors(NanoStringData)
group=pData(NanoStringData)
design.full=model.matrix(~0+factor(group$group))
contrast=c(1,-1)
result=glm.LRT(NanoStringData,design.full,
               Beta=ncol(design.full),contrast=contrast)
head(result$table)

Run the code above in your browser using DataLab