maSigPro {maSigPro} | R Documentation |
maSigPro
performs a whole maSigPro analysis for a times series gene expression experiment.
The function sucesively calls the functions make.design.matrix
(optional), p.vector
, T.fit
,
get.siggenes
and see.genes
.
maSigPro(data, edesign, matrix = "AUTO", groups.vector = NULL, degree = 2, time.col = 1, repl.col = 2, group.cols = c(3:ncol(edesign)), Q = 0.05, alfa = Q, nvar.correction = FALSE, step.method = "backward", rsq = 0.7, min.obs = 3, vars = "groups", significant.intercept = "dummy", cluster.data = 1, add.IDs = FALSE, IDs = NULL, matchID.col = 1, only.names = FALSE, k = 9, cluster.method = "hclust", distance = "cor", agglo.method = "ward.D", iter.max = 500, summary.mode = "median", color.mode = "rainbow", trat.repl.spots = "none", index = IDs[, (matchID.col + 1)], match = IDs[, matchID.col], rs = 0.7, show.fit = TRUE, show.lines = TRUE, pdf = TRUE, cexlab = 0.8, legend = TRUE, main = NULL, ...)
data |
matrix with normalized gene expression data. Genes must be in rows and arrays in columns. Row names must contain geneIDs (argument of |
edesign |
matrix of experimental design. Row names must contain arrayIDs (argument of |
matrix |
design matrix for regression analysis. By default design is calculated with make.design.matrix (argument of |
groups.vector |
vector indicating experimental group of each variable (argument of |
degree |
the degree of the regression fit polynome. (argument of |
time.col |
column in edesign containing time values. Default is first column (argument of |
repl.col |
column in edesign containing coding for replicates arrays. Default is second column (argument of |
group.cols |
columns in (argument of |
Q |
level of false discovery rate (FDR) control (argument of |
alfa |
significance level used for variable selection in the stepwise regression (argument of |
nvar.correction |
logical for indicating correcting of stepwise regression significance level (argument of |
step.method |
argument to be passed to the step function. Can be either |
rsq |
cut-off level at the R-squared value for the stepwise regression fit. Only genes with R-squared greater than |
min.obs |
genes with less than this number of true numerical values will be excluded from the analysis |
vars |
variables for which to extract significant genes (argument of |
significant.intercept |
experimental groups for which significant intercept coefficients are considered (argument of |
cluster.data |
Type of data used by the cluster algorithm (argument of |
add.IDs |
logical indicating whether to include additional gene id's in the significant genes result (argument of |
IDs |
matrix contaning additional gene id information (required when
(argument of |
matchID.col |
number of matching column in matrix IDs for adding genes ids (argument of |
only.names |
logical. If TRUE, expression values are ommited in the significant genes result (argument of |
k |
number of clusters (argument of |
cluster.method |
clustering method for data partioning (argument of |
distance |
distance measurement function used when
(argument of |
agglo.method |
aggregation method used when (argument of |
iter.max |
number of iterations when (argument of |
summary.mode |
the method to condensate expression information when more than one gene is present in the data. Possible values are (argument of |
color.mode |
color scale for plotting profiles. Can be either
(argument of |
trat.repl.spots |
treatment givent to replicate spots. Possible values are (argument of |
index |
argument of the (argument of |
match |
argument of the (argument of |
rs |
minimun pearson correlation coefficient for replicated spots profiles to be averaged (argument of |
show.fit |
logical indicating whether regression fit curves must be plotted (argument of |
show.lines |
logical indicating whether a line must be drawn joining plotted data points for reach group (argument of |
pdf |
logical indicating whether a pdf results file must be generated (argument of |
cexlab |
graphical parameter maginfication to be used for x labels in plotting functions |
legend |
logical indicating whether legend must be added when plotting profiles (argument of |
main |
title for pdf results file |
... |
other graphical function arguments |
maSigPro finds and display genes with significant profile differences in time series gene expression experiments.
The main, compulsory, input parameters for this function are a matrix of gene expression data (see p.vector
for details)
and a matrix describing experimental design (see make.design.matrix
or p.vector
for details). In case extended
gene ID information is wanted to be included in the result of significant genes, a third IDs matrix containing this
information will be required (see get.siggenes
for details).
Basiscally in the function calls subsequent steps of the maSigPro approach which is:
Make a general regression model with dummies to indicate different experimental groups.
Select significant genes on the basis of this general model, applying fdr control.
Find significant variables for each gene, using stepwise regression.
Extract and display significant genes for any set of variables or experimental groups.
summary |
a vector or matrix listing significant genes for the variables given by the function parameters |
sig.genes |
a list with detailed information on the significant genes found for the variables given by the function parameters. Each element of the list is also a list containing:
... :arguments passed by previous functions |
input.data |
input analysis data |
G |
number of input genes |
edesign |
matrix of experimental design |
dis |
regression design matrix |
min.obs |
imputed value for minimal number of true observations |
p.vector |
vector containing the computed p-values of the general regression model for each gene |
variables |
variables in the general regression model |
g |
number of signifant genes |
p.vector.alfa |
p-vlaue at FDR = |
step.method |
imputed step method for stepwise regression |
Q |
imputed value for false discovery rate (FDR) control |
step.alfa |
inputed significance level in stepwise regression |
influ.info |
data frame of genes containing influencial data |
Ana Conesa, aconesa@cipf.es; Maria Jose Nueda, mj.nueda@ua.es
Conesa, A., Nueda M.J., Alberto Ferrer, A., Talon, T. 2005. maSigPro: a Method to Identify Significant Differential Expression Profiles in Time-Course Microarray Experiments.
make.design.matrix
, p.vector
, T.fit
, get.siggenes
, see.genes
#### GENERATE TIME COURSE DATA ## generate n random gene expression profiles of a data set with ## one control plus 3 treatments, 3 time points and r replicates per time point. tc.GENE <- function(n, r, var11 = 0.01, var12 = 0.01,var13 = 0.01, var21 = 0.01, var22 = 0.01, var23 =0.01, var31 = 0.01, var32 = 0.01, var33 = 0.01, var41 = 0.01, var42 = 0.01, var43 = 0.01, a1 = 0, a2 = 0, a3 = 0, a4 = 0, b1 = 0, b2 = 0, b3 = 0, b4 = 0, c1 = 0, c2 = 0, c3 = 0, c4 = 0) { tc.dat <- NULL for (i in 1:n) { Ctl <- c(rnorm(r, a1, var11), rnorm(r, b1, var12), rnorm(r, c1, var13)) # Ctl group Tr1 <- c(rnorm(r, a2, var21), rnorm(r, b2, var22), rnorm(r, c2, var23)) # Tr1 group Tr2 <- c(rnorm(r, a3, var31), rnorm(r, b3, var32), rnorm(r, c3, var33)) # Tr2 group Tr3 <- c(rnorm(r, a4, var41), rnorm(r, b4, var42), rnorm(r, c4, var43)) # Tr3 group gene <- c(Ctl, Tr1, Tr2, Tr3) tc.dat <- rbind(tc.dat, gene) } tc.dat } ## Create 270 flat profiles flat <- tc.GENE(n = 270, r = 3) ## Create 10 genes with profile differences between Ctl and Tr1 groups twodiff <- tc.GENE (n = 10, r = 3, b2 = 0.5, c2 = 1.3) ## Create 10 genes with profile differences between Ctl, Tr2, and Tr3 groups threediff <- tc.GENE(n = 10, r = 3, b3 = 0.8, c3 = -1, a4 = -0.1, b4 = -0.8, c4 = -1.2) ## Create 10 genes with profile differences between Ctl and Tr2 and different variance vardiff <- tc.GENE(n = 10, r = 3, a3 = 0.7, b3 = 1, c3 = 1.2, var32 = 0.03, var33 = 0.03) ## Create dataset tc.DATA <- rbind(flat, twodiff, threediff, vardiff) rownames(tc.DATA) <- paste("feature", c(1:300), sep = "") colnames(tc.DATA) <- paste("Array", c(1:36), sep = "") tc.DATA[sample(c(1:(300*36)), 300)] <- NA # introduce missing values #### CREATE EXPERIMENTAL DESIGN Time <- rep(c(rep(c(1:3), each = 3)), 4) Replicates <- rep(c(1:12), each = 3) Control <- c(rep(1, 9), rep(0, 27)) Treat1 <- c(rep(0, 9), rep(1, 9), rep(0, 18)) Treat2 <- c(rep(0, 18), rep(1, 9), rep(0,9)) Treat3 <- c(rep(0, 27), rep(1, 9)) edesign <- cbind(Time, Replicates, Control, Treat1, Treat2, Treat3) rownames(edesign) <- paste("Array", c(1:36), sep = "") #### RUN maSigPro tc.test <- maSigPro (tc.DATA, edesign, degree = 2, vars = "groups", main = "Test") tc.test$g # gives number of total significant genes tc.test$summary # shows significant genes by experimental groups tc.test$sig.genes$Treat1$sig.pvalues # shows pvalues of the significant coefficients # in the regression models of the significant genes # for Control.vs.Treat1 comparison