AnanseSeurat package

R-CMD-check codecov CRAN_Status_Badge

The AnanseSeurat package takes pre-processed clustered single cell objects of scRNAseq and scATACseq or a multiome combination, and generates files for gene regulatory network (GRN) analysis. It is part of the scANANSE pipeline. https://doi.org/10.12688/f1000research.130530.1

Installation

AnanseSeurat can be installed from CRAN using

install.packages('AnanseSeurat')

Or to install the developmental branch from github:

library(devtools) # Tools to Make Developing R Packages Easier # Tools to Make Developing R Packages Easier
Sys.unsetenv("GITHUB_PAT")
remotes::install_github("JGASmits/AnanseSeurat@main")

Usage

library("AnanseSeurat")
rds_file <- './scANANSE/preprocessed_PDMC.Rds'
pbmc <- readRDS(rds_file)

Next you can output the data from your single cell object, the file format, config file and sample file are all ready to automate GRN analysis using anansnake. https://github.com/vanheeringen-lab/anansnake

export_CPM_scANANSE(
  pbmc,
  min_cells = 25,
  output_dir = './scANANSE/analysis',
  cluster_id = 'predicted.id',
  RNA_count_assay = 'RNA'
)

export_ATAC_scANANSE(
  pbmc,
  min_cells = 25,
  output_dir = './scANANSE/analysis',
  cluster_id = 'predicted.id',
  ATAC_peak_assay = 'peaks'
)

# Specify additional contrasts:
contrasts <-  c('B-naive_B-memory',
                'B-memory_B-naive',
                'B-naive_CD14-Mono',
                'CD14-Mono_B-naive')

config_scANANSE(
  pbmc,
  min_cells = 25,
  output_dir = './scANANSE/analysis',
  cluster_id = 'predicted.id',
  additional_contrasts = contrasts
)

DEGS_scANANSE(
  pbmc,
  min_cells = 25,
  output_dir = './scANANSE/analysis',
  cluster_id = 'predicted.id',
  additional_contrasts = contrasts
)

install and run anansnake

Follow the instructions its respective github page, https://github.com/vanheeringen-lab/anansnake After activating the conda environment, use the generated files to run GRN analysis using your single cell cluster data:

anansnake \
--configfile scANANSE/analysis/config.yaml \
--resources mem_mb=48_000 --cores 12

import ANANSE results back to your single cell object

After running Anansnake, you can import the TF influence scores back into your single cell object of choice

pbmc <- import_seurat_scANANSE(pbmc,
                               cluster_id = 'predicted.id',
                               anansnake_inf_dir = "./scANANSE/analysis/influence")
TF_influence <- per_cluster_df(pbmc,
                               cluster_id = 'predicted.id',
                               assay = 'influence')

Citation

scANANSE gene regulatory network and motif analysis of single-cell clusters [version 1; peer review: awaiting peer review] Jos G.A. Smits, Julian A. Arts, Siebren Frölich, Rebecca R. Snabel, Branco M.H. Heuts, Joost H.A. Martens, Simon J van Heeringen, Huiqing Zhou F1000Research 2023, 12:243 (https://doi.org/10.12688/f1000research.130530.1)

Thanks to:

Credits

The hex sticker is generated using the hexSticker package.