SEMgraph

Causal Structure Learning and Network Analysis with Structural Equation Modeling.

https://github.com/fernandopalluzzi/semgraph

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 9 DOI reference(s) in README
  • Academic publication links
    Links to: ncbi.nlm.nih.gov, science.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.8%) to scientific vocabulary

Keywords from Contributors

peak
Last synced: 10 months ago · JSON representation

Repository

Causal Structure Learning and Network Analysis with Structural Equation Modeling.

Basic Info
  • Host: GitHub
  • Owner: fernandoPalluzzi
  • License: gpl-3.0
  • Language: R
  • Default Branch: master
  • Homepage:
  • Size: 367 MB
Statistics
  • Stars: 25
  • Watchers: 1
  • Forks: 1
  • Open Issues: 1
  • Releases: 9
Created over 6 years ago · Last pushed over 1 year ago
Metadata Files
Readme Changelog License

README.md

SEMgraph

Causal network inference and discovery with Structural Equation Modeling Network Analysis and Causal Learning with Structural Equation Modeling

SEMgraph Estimate networks and causal relations in complex systems through Structural Equation Modeling (SEM). SEMgraph comes with the following functionalities: - Interchangeable model representation as either an igraph object or the corresponding SEM in lavaan syntax. Model management functions include graph-to-SEM conversion, automated covariance matrix regularization, graph conversion to DAG, and tree (arborescence) from correlation matrices. - Heuristic filtering, node and edge weighting, resampling and parallelization settings for fast fitting in case of very large models. - Automated data-driven model building and improvement, through causal structure learning and bow-free interaction search and latent variable confounding adjustment. - Perturbed paths finding, community searching and sample scoring, together with graph plotting utilities, tracing model architecture modifications and perturbation (i.e., activation or repression) routes.

 

Installation

The latest stable version can be installed from CRAN: r install.packages("SEMgraph")

The latest development version can be installed from GitHub: r devtools::install_github("fernandoPalluzzi/SEMgraph")

Do not forget to install the SEMdata package too! It contains useful high-throughput sequencing data, reference networks, and pathways for SEMgraph training:

r devtools::install_github("fernandoPalluzzi/SEMdata")  

Getting help

A gentle introduction to SEMgraph functionalities is available at our DOCs page.

The full list of SEMgraph functions with examples is available at our website HERE.  

SEMgraph-related projects

  • SEMdeep. Interpretable artificial intelligence using SEM-based deep learning modeling.
  • SEMdag. Fast learning of Directed Acyclic Graphs via node or layer ordering.
  • SEMgsa. SEM-based gene set analysis tool enabling perturbed pathway and gene finding by exploiting the causal structure of a graph.
  • SEMtree. Tree structure learning methods implemented with graph and data-driven SEM-based algorithms.
  • SEMbap. Bow-free covariance search and data de-correlation.  

Available datasets

Create updated pathway and reference network versions

SEMgraph and SEMdata reference datasets are freezed to benchmarked versions. If you would like to get the latest version of your favourite database, you can use either the R package graphite (graphite tutorial), or our simple wrapper function, contained in the R script loadPathwayData.R. The script comes with descriptions and examples.

Latest stable datasets

SEMgraph offers several verified datasets to work with, for both training and research. They include (** available with the SEMdata expansion): - KEGG directed reference network of 5934 nodes and 77158 edges, derived from the KEGG database. - KEGG pathways. A comprehensive list of 227 KEGG pathways (last update: February 2024). - Reactome directed reference network of 9762 nodes and 416128 edges, derived from Reactome DB. [**] - Reactome pathways. A comprehensive list of 1641 pathways (last update: April 2020). [**] - STRING interactome (version 10.5) of 9725 nodes and 170987 edges. [**] - Amyotrophic Lateral Sclerosis (ALS) RNA-seq dataset of 139 cases and 21 healthy controls, from Tam O.H. et al., 2019 (GEO accession: GSE124439). [**] - Frontotemporal Dementia (FTD) DNA methylation dataset 150 cases and 150 healthy controls, from Li Y. et al., 2014 (GEO accession: GSE53740). [**] - COVID-19 RNA-seq dataset of 46 critical and 23 non-critical COVID-19 cases in young patients, from Carapito R. et al., 2022 (GEO accession: GSE172114). [**] - Flow cytometry data and causal model from Sachs et al., 2005.  

References

SEMgraph

Grassi M, Palluzzi F, Tarantino B. SEMgraph: an R package for causal network inference of high-throughput data with structural equation models. Bioinformatics, 2022 Aug 30; 38(20):btac567. https://doi.org/10.1093/bioinformatics/btac567

Associated projects

Grassi M, Tarantino B. SEMgsa: topology-based pathway enrichment analysis with structural equation models. BMC Bioinformatics, 2022 Aug 17; 23(1):344. https://doi.org/10.1186/s12859-022-04884-8

Grassi M, Tarantino B. SEMtree: tree-based structure learning methods with structural equation models. Bioinformatics, 2023 June 09; 39(6):btad377. https://doi.org/10.1093/bioinformatics/btad377

Grassi M, Tarantino B. SEMbap: Bow-free covariance search and data de-correlation. PLoS Comput Biol, 2024 Sep 11; 20(9):e1012448. https://doi.org/10.1371/journal.pcbi.1012448

Owner

  • Name: Fernando Palluzzi
  • Login: fernandoPalluzzi
  • Kind: user
  • Location: Vandtårnsvej 112, 2860 Søborg, Denmark
  • Company: Novo Nordisk A/S

Senior Data Scientist @ Novo Nordisk - Integrated Omics Group

GitHub Events

Total
  • Watch event: 2
  • Push event: 18
Last Year
  • Watch event: 2
  • Push event: 18

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 336
  • Total Committers: 3
  • Avg Commits per committer: 112.0
  • Development Distribution Score (DDS): 0.104
Past Year
  • Commits: 32
  • Committers: 3
  • Avg Commits per committer: 10.667
  • Development Distribution Score (DDS): 0.281
Top Committers
Name Email Commits
Fernando Palluzzi 5****i 301
fernandoPalluzzi f****i@g****m 34
AFPZ a****z@r****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 5
  • Total pull requests: 34
  • Average time to close issues: 6 months
  • Average time to close pull requests: 2 minutes
  • Total issue authors: 4
  • Total pull request authors: 1
  • Average comments per issue: 2.6
  • Average comments per pull request: 0.03
  • Merged pull requests: 31
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: less than a minute
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • aldosc (2)
  • barracuda156 (1)
  • Xiaoxi-Hu (1)
  • andreanuzzo (1)
Pull Request Authors
  • fernandoPalluzzi (36)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 361 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 11
  • Total maintainers: 1
cran.r-project.org: SEMgraph

Network Analysis and Causal Inference Through Structural Equation Modeling

  • Versions: 11
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 361 Last month
Rankings
Stargazers count: 12.9%
Forks count: 21.0%
Dependent repos count: 24.0%
Average: 24.9%
Dependent packages count: 28.8%
Downloads: 38.0%
Last synced: 11 months ago

Dependencies

DESCRIPTION cran
  • R >= 4.0 depends
  • igraph >= 1.3.0 depends
  • lavaan >= 0.5 depends
  • RBGL >= 1.68.0 imports
  • Rgraphviz >= 2.22.0 imports
  • boot >= 1.3 imports
  • corpcor >= 1.6.9 imports
  • dagitty >= 0.3 imports
  • flip >= 2.5.0 imports
  • gdata >= 2.18.0 imports
  • ggm >= 2.3 imports
  • glmnet >= 2.0 imports
  • graph >= 1.56.0 imports
  • leaps >= 3.1 imports
  • mgcv >= 1.8 imports
  • pbapply >= 1.4 imports
  • protoclust >= 1.6.3 imports
  • huge * suggests