Skip to content

warelab/NECorr

Repository files navigation

NECorr: Network Expression Correlation Ranking

Contents

NECorr is an R package designed to integrate molecular network topology with expression correlation to prioritize candidate genes for specific conditions. This package provides a comprehensive suite of tools for analyzing gene expression data within the context of network structures, offering insights into potential regulatory mechanisms.

Overview

Description

NECorr is a R package based on multiple-criteria decision-making algorithms using Entropy (EWM). With the objective of ranking genes and their interactions in a selected condition or tissue, NECorr uses molecular network topology as well as global transcriptomics analysis to find condition/tissue-specific hub genes and their regulators.

Features

  • Calculate multiple correlation coefficients (Gini, Pearson, Spearman, Kendall) efficiently.
  • Integrate network topology with expression data for comprehensive analysis.
  • Prioritize candidate genes based on network expression correlation.
  • Utilize bootstrapping methods for robust statistical inference.

Installation Guide

Prerequisites

Hardware Requirements

This package is supported for Mac OS, Windows and Linux operating systems. The package require a long running time depending of the size of molecular network. A computer with 16 GB RAM is recommended to run the package. The necessary C++ or GCC libraries are needed as the software is running partially on Rccp. ### Software Requirements Ensure you have R (version 4.3 or higher) installed on your system. You can download it from CRAN. The package requires the following R packages: -

  • devtools (for installation from GitHub) Most of the NECorr package dependencies will be installed automatically. However, the above packages may require manual installation if not already present in your R environment. The following BioConductor package will need to be installed separately - Biobase - BiocGenerics - limma - AnnotationDbi - GenomeInfoDbData - supraHex

  • data.table dplyr igraph matrixStats purrr

  • Hmisc boot fdrtool impute

  • Rcpp RcppParallel parallel

  • ggplot2 ggraph visNetwork scales tibble tidyr rlang

Installation Steps

You can install the NECorr package directly from GitHub using the devtools package. If you haven’t already, you’ll need to install devtools:

install.packages("devtools")

Once devtools is installed, use the following command to install NECorr:

# Install the proper gfortran toolchain for R
install.packages("remotes")remotes::install_github("coatless-mac/macrtools")

# Optional, but nice if you want everything set up
macrtools::gfortran_install()
macrtools::macos_rtools_install()

# Optional: pre-install dependencies
install.packages(c("igraph", "Matrix", "gtools", "gplots", "Rcpp"))

# install Bioconductor dependencies not reachable by the normal installation
if (!requireNamespace("BiocManager", quietly = TRUE)) { install.packages("BiocManager")}
  BiocManager::install(c("impute", "preprocessCore"), ask = FALSE, update = TRUE)

if (!requireNamespace("devtools", quietly = TRUE)) { install.packages("devtools")}

# install NECorr package
devtools::install_github("warelab/NECorr", build_vignettes=TRUE, dependencies=TRUE, upgrade_dependencies=TRUE)

Usage

Here is a basic example of how to use NECorr for network expression correlation analysis:

library(NECorr)

# Load your gene expression data and network edges
expression_data <- read.csv("path/to/expression_data.csv")
edges <- read.csv("path/to/network_edges.csv")

# Calculate correlation metrics using multiCorr
results <- multiCorr(
  expression = expression_data,
  edges = edges,
  methods = c("GCC", "PCC", "SCC", "KCC"),
  pernum = 1000,  # Number of bootstraps
  useBestGCC = TRUE,
  asymmetricGCC = FALSE
)

# View the results
head(results)

# run NECorr
results <- NECorr(
  networkFile = networkFile,
  expression = expressionFile,
  description.file = descriptionFile,
  condition = condition,
  metadata = metadataFile,
  method = c("GCC","PCC", "SCC", "KCC"),
  visualize = TRUE,
  save_results = TRUE,
  output_dir = "NECorr_results",
  top_n = 15,
  interactive_net = FALSE
)

Documentation

Key Functions

The NECorr package includes several key functions: multiCorr(): Calculate multiple correlation metrics in one pass. NetTopology(): Analyze network topology metrics. DE.ranking(): Rank differential expression in the context of network topology. ts.IUT(): Perform intersection-union tests for condition-specific analysis. NECorr(): Integrate correlation and topology for gene prioritization.

Help Files

Comprehensive documentation is available within the package, including descriptions of all functions and their parameters. Use the following command to access help files for any function:

?NECorr
?multiCorr
?NetTopology
?DE.ranking
?ts.IUT

License

This project is licensed under the MIT License - see the LICENSE file for details.

Citation

For citing code or the paper, please use this citation for the version 1.0.0 of the package For the current version of the package a citation will be provided soon.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •