• 【单细胞高级绘图】08.细胞通讯_两组比较_气泡图


    细胞通讯分析,我很早之前就写过,当时详细介绍了CellPhoneDB原理实操可视化。 单细胞分析实录(18): 基于CellPhoneDB的细胞通讯分析及可视化 (上篇) 单细胞分析实录(19): 基于CellPhoneDB的细胞通讯分析及可视化 (下篇)

    今天说的这个问题还是很常见的:「在进行细胞通讯分析之后,如何比较两组的受配体对的差异?」 如果你的数据包含两个以上的组别,大概率是要做这个事情的。

    CellPhoneDB这个软件很简单(这也是用得多的原因),在几组数据分别运行之后,是不能直接比较的。我之前的做法是电脑打开两个图,对照着看,有些费时费力。

    所以后来,想了一种方法,就是把两张图重叠起来,计算一个"图一相较于图二差异大小的指标",就只用看一张图了。

    alt

    就比如这张图,在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_"
                )
    • 1

    获取代码

    这个系列都会采取「限时公开」的方式共享代码,24小时内是免费的。超过这个时间如何获取,后台回复2022A可知。

    代码和测试数据的网盘链接如下: 链接:https://pan.baidu.com/s/1fTP-HGgusjdPTxtYtrqb4A 提取码:zv7n

    觉得代码有用的话,可以给个三/二/一连(文末点赞分享点下小广告

    预告

    下一期代码还是两组比较,还是基于CellPhoneDB,可以用连线清晰展示ligand-receptor的关系,敬请期待。

    alt
    alt
  • 相关阅读:
    nginx
    数据结构与算法(Java版) | 排序算法的介绍与分类
    迭代器是一个实现了__iter__()和__next__()方法的对象
    【webrtc 】FEC 1: 音频RED rfc2198及视频ULPFEC的RED封装
    springcloud新闻发布系统源码
    【OpenGL】五、光照
    leetCode 567. 字符串的排列
    澳大利亚和新西兰的玩具和儿童产品法规
    7 Series Devices Memory Interface Solution - Memory Controller Block
    Stable Diffusion教程
  • 原文地址:https://blog.csdn.net/qq_38774801/article/details/126611982