compareAn2graphfile {MineICA} | R Documentation |
This function builds a correlation graph from the outputs
of function compareAn
.
compareAn2graphfile(listPairCor, useMax = TRUE, cutoff = NULL, useVal = c("cor", "pval"), file = NULL)
listPairCor |
The output of the function
|
useMax |
If TRUE, the graph is restricted to edges that correspond to maximum score, see details |
cutoff |
Cutoff used to select pairs that will be included in the graph. |
useVal |
The value on which is based the graph,
either |
file |
File name. |
When correlations are considered (useVal
="cor"),
absolute values are used since the components have no
direction.
If useMax
is TRUE
each component is linked
to the most correlated component of each different
IcaSet
.
If cutoff
is specified, only correlations
exceeding this value are taken into account during the
graph construction. For example, if cutoff
is 1,
only relationships between components that correspond to
a correlation value larger than 1 will be included.
When useVal="pval"
and useMax=TRUE
, the
minimum value is taken instead of the maximum.
A data.frame with the graph description, has two columns
n1
and n2
filled with node IDs, each row
denotes that there is an edge from n1
to
n2
. Additional columns quantify the strength of
association: correlation (cor
), p-value
(pval
), (1-abs(cor)
) (distcor
),
log10-pvalue (logpval
).
Anne Biton
dat1 <- data.frame(matrix(rnorm(10000),ncol=10,nrow=1000)) rownames(dat1) <- paste("g", 1:1000, sep="") colnames(dat1) <- paste("s", 1:10, sep="") dat2 <- data.frame(matrix(rnorm(10000),ncol=10,nrow=1000)) rownames(dat2) <- paste("g", 1:1000, sep="") colnames(dat2) <- paste("s", 1:10, sep="") ## run ICA resJade1 <- runICA(X=dat1, nbComp=3, method = "JADE") resJade2 <- runICA(X=dat2, nbComp=3, method = "JADE") ## build params params <- buildMineICAParams(resPath="toy/") ## build IcaSet object icaSettoy1 <- buildIcaSet(params=params, A=data.frame(resJade1$A), S=data.frame(resJade1$S), dat=dat1, alreadyAnnot=TRUE)$icaSet icaSettoy2 <- buildIcaSet(params=params, A=data.frame(resJade2$A), S=data.frame(resJade2$S), dat=dat2, alreadyAnnot=TRUE)$icaSet resCompareAn <- compareAn(icaSets=list(icaSettoy1,icaSettoy2), labAn=c("toy1","toy2"), type.corr="pearson", level="genes", cutoff_zval=0) ## Build a graph where edges correspond to maximal correlation value (useVal="cor"), compareAn2graphfile(listPairCor=resCompareAn, useMax=TRUE, useVal="cor", file="myGraph.txt") ## Not run: #### Comparison of 2 ICA decompositions obtained on 2 different gene expression datasets. ## load the two datasets library(breastCancerMAINZ) library(breastCancerVDX) data(mainz) data(vdx) ## Define a function used to build two examples of IcaSet objects treat <- function(es, annot="hgu133a.db") { es <- selectFeatures_IQR(es,10000) exprs(es) <- t(apply(exprs(es),1,scale,scale=FALSE)) colnames(exprs(es)) <- sampleNames(es) resJade <- runICA(X=exprs(es), nbComp=10, method = "JADE", maxit=10000) resBuild <- buildIcaSet(params=buildMineICAParams(), A=data.frame(resJade$A), S=data.frame(resJade$S), dat=exprs(es), pData=pData(es), refSamples=character(0), annotation=annot, typeID= typeIDmainz, chipManu = "affymetrix", mart=mart) icaSet <- resBuild$icaSet } ## Build the two IcaSet objects icaSetMainz <- treat(mainz) icaSetVdx <- treat(vdx) ## Compute correlation between every pair of IcaSet objects. resCompareAn <- compareAn(icaSets=list(icaSetMainz,icaSetVdx), labAn=c("Mainz","Vdx"), type.corr="pearson", level="genes", cutoff_zval=0) ## Same thing but adding a selection of genes on which the correlation between two components is computed: # when considering pairs of components, only projections whose scaled values are not located within # the circle of radius 1 are used to compute the correlation (cutoff_zval=1). resCompareAn <- compareAn(icaSets=list(icaSetMainz,icaSetVdx), labAn=c("Mainz","Vdx"), type.corr="pearson", cutoff_zval=1, level="genes") ## Build a graph where edges correspond to maximal correlation value (useVal="cor"), ## i.e, component A of analysis i is linked to component B of analysis j, ## only if component B is the most correlated component to A amongst all component of analysis j. compareAn2graphfile(listPairCor=resCompareAn, useMax=TRUE, useVal="cor", file="myGraph.txt") ## Restrict the graph to correlation values exceeding 0.4 compareAn2graphfile(listPairCor=resCompareAn, useMax=FALSE, cutoff=0.4, useVal="cor", file="myGraph.txt") ## End(Not run)