Skip to content

CCCbank: an integrated computational pipeline for CCC inference by flexibly combining inference methods and prior databases

Notifications You must be signed in to change notification settings

SunXQlab/CCCbank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

To facilitate practical applications of CCC inference tools, we developed an integrated computational pipeline, CCCbank, that enables flexible combinations between 16 LR inference methods and 13 LR databases. Via CCCbank, each method can be equipped with one or more LR databases or any other user-defined databases. CCCbank uses Seurat object of scRNA-seq data as input for CCC inference. The output of CCCbank includes inferred LR pairs and their scores, which can be used for further analysis or visualization.

Installation

CCCbank can be installed from the github.

if(!require(devtools)){
  install.packages('devtools')
}
devtools::install_github('SunXQlab/CCCbank')

Usage

Run CCC inference methods with their default LR prior database, for example, CellChat.

# Method 1:
result <- CCCbank(ser = ser, method = 'CellChat', species = 'human')

# Method 2:
result <- RunCellChat(ser = ser, species = 'human')

If you want to run other methods like method 2 above, please refer to the corresponding RunFunction in the table in Methods.

Run CCC inference methods with one or more built-in LR prior databases. Note that if using built-in LR prior databases, species is only ‘human’.

# run CellChat method with the combination of CellPhoneDBLR and FANTOM5 
# as LR prior database to infer CCC.
result <- CCCbank(ser = ser, method = 'CellChat', species = 'human', 
                  databases = c('CellPhoneDBLR', 'FANTOM5'), extension = FALSE)

# run CellChat method with the combination of CellPhoneDBLR, FANTOM5 
# and defualt LR prior database of CellChat as LR prior database
result <- CCCbank(ser = ser, method = 'CellChat', species = 'human', 
                  databases = c('CellPhoneDBLR', 'FANTOM5'), extension = TRUE)

Run CCC inference methods with user-defined databases.

database <- data.frame(ligand = c('L1', 'L2', 'L3', 'L4'),
                       receptor = c('R1', 'R2', 'R1', 'R3'))
# Method 1
result <- CCCbank(ser = ser, method = 'CellChat', species = 'human', 
                  databases = database, extension = FALSE)

# Method 2
database <- data.frame(ligand = c('L1', 'L2', 'L3', 'L4'),
                       receptor = c('R1', 'R2', 'R1', 'R3'),
                       lr = c('L1_R1', 'L2_R2', 'L3_R1', 'L4_R3'))
db_new <- ChangeCellChatDB(priorDatabase = database, 
                           extension = FALSE, species = 'human')
result <- RunCellChat(ser = ser, species = 'human', priorDatabase = db_new)

If you want to run other methods with user-defined databases like method 2 above, please refer to the corresponding RunFunction and ChangeDBFunction in the table in Methods. And check the usage of methods using ‘?RunFunction’, for example, ?RunCellChat. Note that if the user-defined databases contain multi-subunit of ligands and receptors, use ‘&’ to connect them. For example, if the ligand is A&B and the receptor is D&W, lr is A&B_D&W.

Methods

There are 16 CCC inference methods implemented in CCCbank R package:

Methods Version Supported Species RunFunction ChangeDBFunction
CellPhoneDB 2/3 3.0.0 human RunCellPhoneDB ChangeCellPhoneDB
CellTalker 0.0.4.9000 human RunCellTalker ChangeCellTalkerDB
Connectome 1.0.1 human
mouse
rat
pig
RunConnectome ChangeConnectomeDB
ICELLNET 1.0.1 human RunICELLNET ChangeICELLNETDB
NATMI —— human
mouse
(21 species in total)
RunNATMI ChangeNATMIDB
iTALK 0.1.0 human RuniTALK ChangeiTALKDB
scConnect 1.0.3 human
mouse
RunscConnect ChangescConnectDB
SingleCellSignalR 1.2.0 human
mouse
RunSCSR ChangeSCSRDB
CellChat 1.4.0 human
mouse
zebrafish
RunCellChat ChangeCellChatDB
RNAMagnet 0.1.0 mouse RunRNAMagnet ChangeRNAMagnetDB
scSeqComm 1.0.0 human
mouse
RunscSeqComm ChangescSeqCommDB
NicheNet 1.1.0 human RunNicheNet ChangeNicheNetDB
CytoTalk 0.99.9 human
mouse
RunCytoTalk ChangeCytoTalkDB
scMLnet 0.2.0 human RunscMLnet ChangescMLnetDB
Domino 0.1.1 human
mouse
RunDomino ChangeDominoDB

Note: Some methods also support other species, but not yet implemented in CCCbank R package.

LR prior databases

There are 13 built-in LR prior databases in CCCbank R package:

  • CellPhoneDBLR
  • FANTOM5
  • ICELLNETDB
  • NATMIDB
  • iTALKDB
  • scConnectDB
  • CellChatDB
  • SingleCellSignalRDB
  • RNAMagnetDB
  • NicheNetDB
  • DominoDB
  • CellCallDB
  • CytoTalkDB

Citation

Please cite CCCbank with the following reference:

Luo J, Deng M, Zhang X, Sun X*. ESICCC as a systematic computational framework for evaluation, selection and integration of cell-cell communication inference methods. Genome Research. 2023. doi: 10.1101/gr.278001.123

Contact

If you encounter any problems, please contact (sunxq6@mail.sysu.edu.cn).

About

CCCbank: an integrated computational pipeline for CCC inference by flexibly combining inference methods and prior databases

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published