黄思源
V1
2022/08/30阅读:162主题:全栈蓝
【单细胞高级绘图】08.细胞通讯_两组比较_气泡图
细胞通讯分析,我很早之前就写过,当时详细介绍了CellPhoneDB
的原理
、实操
、可视化
。 单细胞分析实录(18): 基于CellPhoneDB的细胞通讯分析及可视化 (上篇) 单细胞分析实录(19): 基于CellPhoneDB的细胞通讯分析及可视化 (下篇)
今天说的这个问题还是很常见的:「在进行细胞通讯分析之后,如何比较两组的受配体对的差异?」 如果你的数据包含两个以上的组别,大概率是要做这个事情的。
CellPhoneDB这个软件很简单(这也是用得多的原因),在几组数据分别
运行之后,是不能直接比较的。我之前的做法是电脑打开两个图,对照着看,有些费时费力。
所以后来,想了一种方法,就是把两张图重叠起来,计算一个"图一相较于图二差异大小的指标",就只用看一张图了。

就比如这张图,在Old
组做完cellphonedb之后,能得到表示受配体表达的mean
;同样地,Young
组也能得到表示受配体表达的mean
。(在对应的两个p值满足一定条件下)这两个值相除,就能表示两组的差异了。
#这一个代码仿照cellphonedb的图,即气泡图
#我之前讲cellphonedb的帖子,也采用了这种图,见:
#单细胞分析实录(19): 基于CellPhoneDB的细胞通讯分析及可视化 (下篇)
source("CCC_compare.R")
### 必要参数
CCC_compare(group1.name = "Old",group2.name = "Young",
group1.pfile = "cellphonedb/Old/pvalues.txt",group1.mfile="cellphonedb/Old/means.txt",
group2.pfile="cellphonedb/Young/pvalues.txt",group2.mfile="cellphonedb/Young/means.txt",
p.threshold = 0.01,thre=1,
plot.width=105,plot.height=110,filename = "test1_"
)
### 额外参数
# 比如,这里我想展示EC细胞分别充当cellA和cellB的图
# 也可以指定gene pair
CCC_compare(group1.name = "Old",group2.name = "Young",
group1.pfile = "cellphonedb/Old/pvalues.txt",group1.mfile="cellphonedb/Old/means.txt",
group2.pfile="cellphonedb/Young/pvalues.txt",group2.mfile="cellphonedb/Young/means.txt",
p.threshold = 0.05,thre=1,
#gene.pair = NULL,
cell.pair=c(
paste0("EC|",c("APC","SMC","Mac","DC","Neutrophil")),
paste0(c("APC","SMC","Mac","DC","Neutrophil"),"|EC")
),
plot.width=18,plot.height=30,filename = "test2_"
)
获取代码
这个系列都会采取「限时公开」的方式共享代码,24小时
内是免费的。超过这个时间如何获取,后台回复2022A
可知。
代码和测试数据的网盘链接如下: 链接:https://pan.baidu.com/s/1fTP-HGgusjdPTxtYtrqb4A 提取码:zv7n
觉得代码有用的话,可以给个三/二/一连(文末点赞
、分享
、点下小广告
)
预告
下一期代码还是两组比较,还是基于CellPhoneDB,可以用连线
清晰展示ligand-receptor
的关系,敬请期待。


作者介绍
黄思源
V1