当前位置: 首页 > news >正文

【单细胞高级绘图】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_"
            )

获取代码

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

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

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

预告

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

alt
alt

相关文章:

  • java计算机毕业设计基于安卓Android/微信小程序的校园报修管理APP
  • Mysql 的安装
  • 8.【外部排序】基本概念和方法 + 优化:【败者树】{减少关键字对比次数}、【置换-选择 排序】{减少初始归并段数量}、【最佳归并树】{谁先合并更快}
  • Python装饰器通俗理解
  • 1516. 移动 N 叉树的子树 DFS
  • 【计算机图形学】高级外观建模
  • 阿里云dataworks中业务流程中问题(odps2)
  • 数据库基础小练习
  • java计算机毕业设计基于安卓Android/微信小程序的汽车租赁小程序-app
  • 学习-Java类和对象之访问限制
  • MATLAB2016笔记(十一):基本粒子群优化算法(PSO)的MATLAB实现
  • MyBatisPlus总结
  • 14天刷爆LeetCode算法学习计划——Day02双指针(2)
  • 《数据结构》时间复杂度
  • Redis 3 - 集群
  • 分享一款快速APP功能测试工具
  • [ JavaScript ] 数据结构与算法 —— 链表
  • Java 23种设计模式 之单例模式 7种实现方式
  • Java 多线程编程之:notify 和 wait 用法
  • Javascript弹出层-初探
  • JS数组方法汇总
  • Redis字符串类型内部编码剖析
  • scrapy学习之路4(itemloder的使用)
  • spring学习第二天
  • storm drpc实例
  • uva 10370 Above Average
  • 个人博客开发系列:评论功能之GitHub账号OAuth授权
  • 更好理解的面向对象的Javascript 1 —— 动态类型和多态
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 入手阿里云新服务器的部署NODE
  • 怎样选择前端框架
  • ​flutter 代码混淆
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • #if和#ifdef区别
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (AngularJS)Angular 控制器之间通信初探
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (附源码)springboot教学评价 毕业设计 641310
  • (六)激光线扫描-三维重建
  • (论文阅读40-45)图像描述1
  • (三)mysql_MYSQL(三)
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转载)CentOS查看系统信息|CentOS查看命令
  • .gitignore
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .NET MVC第三章、三种传值方式
  • .net 设置默认首页
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接