SEMdci {SEMgraph} | R Documentation |
SEM-based differential network analysis
Description
Creates a sub-network with perturbed edges obtained from the
output of SEMace
, comparable to the procedure in
Jablonski et al (2022), or of SEMrun
with two-group
and CGGM solver, comparable to the algorithm 2 in Belyaeva et al (2021).
To increase the efficiency of computations for large graphs, users can
select to break the network structure into clusters, and select the
topological clustering method (see clusterGraph
).
The function SEMrun
is applied iteratively on
each cluster (with size min > 10 and max < 500) to obtain the graph
with the full list of perturbed edges.
Usage
SEMdci(graph, data, group, type = "ace", method = "BH", alpha = 0.05, ...)
Arguments
graph |
Input network as an igraph object. |
data |
A matrix or data.frame. Rows correspond to subjects, and columns to graph nodes (variables). |
group |
A binary vector. This vector must be as long as the number of subjects. Each vector element must be 1 for cases and 0 for control subjects. |
type |
Average Causal Effect (ACE) with two-group, "parents"
(back-door) adjustement set, and "direct" effects ( |
method |
Multiple testing correction method. One of the values
available in |
alpha |
Significance level (default = 0.05) for edge set selection. |
... |
Currently ignored. |
Value
An igraph object.
Author(s)
Mario Grassi mario.grassi@unipv.it
References
Belyaeva A, Squires C, Uhler C (2021). DCI: learning causal differences between gene regulatory networks. Bioinformatics, 37(18): 3067–3069. <https://doi: 10.1093/bioinformatics/btab167>
Jablonski K, Pirkl M, Ćevid D, Bühlmann P, Beerenwinkel N (2022). Identifying cancer pathway dysregulations using differential causal effects. Bioinformatics, 38(6):1550–1559. <https://doi.org/10.1093/bioinformatics/btab847>
Examples
## Not run:
#load SEMdata package for ALS data with 17K genes:
#devtools::install_github("fernandoPalluzzi/SEMdata")
#library(SEMdata)
# Nonparanormal(npn) transformation
library(huge)
data.npn<- huge.npn(alsData$exprs)
dim(data.npn) #160 17695
# Extract KEGG interactome (max component)
KEGG<- properties(kegg)[[1]]
summary(KEGG)
# KEGG modules with ALS perturbed edges using fast gready clustering
gD<- SEMdci(KEGG, data.npn, alsData$group, type="fgc")
summary(gD)
gcD<- properties(gD)
old.par <- par(no.readonly = TRUE)
par(mfrow=c(2,2), mar=rep(2,4))
gplot(gcD[[1]], l="fdp", main="max component")
gplot(gcD[[2]], l="fdp", main="2nd component")
gplot(gcD[[3]], l="fdp", main="3rd component")
gplot(gcD[[4]], l="fdp", main="4th component")
par(old.par)
## End(Not run)