细胞通讯分析是单细胞转录组和空间组必备的分析步骤之一,而cellchat由于其丰富的可视化功能被大家广泛使用,这里记录一下cellchat分析的全流程以及相关的可视化尝试。
环境导入
首先是导入需要的R环境和包
ptm = Sys.time()
library(Seurat)
library(CellChat)
library(patchwork)
library(dplyr)
options(stringsAsFactors = FALSE)
library(gridExtra)#用于组合图
创建cellchat对象
这里我们导入的Seurat对象已经经过了标准的单细胞流程,进行了一定的细胞类别注释,且注释列保存为一列名为'annotation'的标签
data_final <- readRDS("/你的SEURAT对象路径/xx.rds")
options(future.globals.maxSize = 1000 * 1024^2)
data_final <- SCTransform(data_final, verbose = TRUE)#重新进行标准化
DefaultAssay(data_final) <- "SCT"
cellchat <- createCellChat(object = data_final, group.by = "annotation")
利用SCT标准化层创建的cellchat对象信息如下
设置数据库
这里我们的数据样本是小鼠,如果是人和其他样本可以选用CellChatDB.human的数据库,同时数据库也可以subset,包括“Secreted Signaling”(分泌型信号传导)、“ECM-Receptor”(细胞外基质-受体相互作用)和“Cell-Cell Contact”(细胞-细胞接触)三种,也可以选择默认的全部。
CellChatDB <- CellChatDB.mouse
CellChatDB.use <- subsetDB(CellChatDB, search =