test.LC {EMA} | R Documentation |
This function performs either a global significance F-test of one or several linear combinations of the parameters (contrast) of a (generalized) linear model, or tests for the significance of each contrast simultaneously, with or without multiple test correction.
test.LC(C, X, Y, global=FALSE, cor.multtest=TRUE,typeFDR="FDR-BH")
C |
Vector or matrix of the linear combinations of factors we want to test. |
X |
Design matrix of the (generalized) linear model adjusted to the data. |
Y |
Vector or response matrix (e.g. a gene expression matrix) to which the (generalized) linear model is applied. If a matrix is specified the test(s) will be done on each column of the matrix. |
global |
logical indicating if one want to perform a F test of the global hypothesis H_0=0, or to test each contrast simultaneously |
cor.multtest |
logical.If global=FALSE indicates if one want to apply a multiple test correction for the computation of the p-values |
typeFDR |
If global=FALSE and cor.multtest=TRUE this argument is passed to the function multiple.correction(), it specifies which correction method to apply. See '?multiple.correction' for more details. |
The design matrix X can be extracted from a (generalized) linear model with the function model.matrix
.
If Y is a response matrix each column shall be a gene/individual response on which the linear combinations will be tested.
If one wish to test several linear combinations at the same time, C must be a matrix p*n with n the number of columns in the design matrix X (i.e. the number of parameters in the (generalized) linear model) and p the number of linear combinations, so that each row stands for one linear combination. Else C shall be a vector of length n.
In case where both C and Y are matrices, each linear combination of the parameters (i.e. each row of C) will be tested for nullity on each gene/individual (i.e. each column of Y).
A list of matrices :
Estimate |
A matrix containing the estimated values: F[i,j] is the estimated value of the linear combination i (on gene j). |
F |
A matrix containing the F values: F[i,j] is the F value of the test of linear combination i on gene j. |
pvalue |
A matrix containing the p-values: pvalue[i,j] is the p-value of the test of linear combination i on gene j. |
Y.pred |
A matrix containing the predicted response vectors |
resid |
A matrix containing the residuals of the linear model |
sigma2 |
A matrix with one row containing the residual variance for each gene |
theta |
A matrix containing the estimates of the effects of the original model. These estimates are the ones also obtained with summary.lm() |
EMA group
data(marty) ##Class label 0/1 marty.type.num <- ifelse(marty.type.cl=="Her2+",0,1) #Annotation of the grade of tumor grade=factor(sample(c(1:3),23,rep=TRUE),labels=c("I","II","III")) typeXfactor=paste(marty.type.num,grade,sep=":") ##dataset fro example normData<-marty[1:100,] rt<-runTtest(normData, labels=marty.type.num, plot=FALSE) normData.DE<-normData[which(rt["AdjpValue"]<0.05),] marty.lm=lm(t(normData.DE)~as.factor(typeXfactor)) X=model.matrix(marty.lm) #We want to test Basal vs Her2+ within each grade LC<-matrix(c(0,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1),ncol=6,byrow=TRUE) #We also want to test grade II vs grade III LC2=c(0,1,-1,0,1,-1) LC=rbind(LC,LC2) row.names(LC)=c("B:I-H:I","B:II-H:II","B:III-H:III","II-III") marty.LC=test.LC(LC,X,t(normData.DE)) marty.LC$pvalue #List of the probesets differentially expressed for each of the four tests : ll=list() for(i in 1:nrow(marty.LC$pvalue)){ ll[[i]]=as.matrix(marty.LC$pvalue[i,which(marty.LC$pvalue[i,]<0.05)]) rownames(ll[[i]])=names(which(marty.LC$pvalue[i,]<0.05)) } names(ll)=rownames(marty.LC$pvalue) print(ll)