【FindAllMarkers】Seruat鉴定差异表达基因的方法与P值的理解

news2024/10/1 17:21:13

 

目录

差异表达分析

用法简单示例

结果解读

P值与P adjust值的区别

假设检验

Bonferroni校验

reference


差异表达分析

seruat中差异表达分析的函数主要有两个:FindAllMarkers()和FindMarkers(),前者是比较一个cluster与所有其他cluster之间的基因表达,后者比较两个特定cluster之间的基因表达。

用法简单示例

  1. 在RNA assay上做差异表达分析:seruat对象切换到RNA assay,对原始的基因counts矩阵进行NormalizeData和ScaleData,获取归一化的seurat_obj[['RNA]]@data后(对应参数slot = "data"),进行差异基因分析。(推荐)
  2. 直接在SCT assay上做差异表达分析

设置FindAllMarkers的参数only.pos=True,表示只保留当前cluster阳性表达的基因

# lognormalize预处理
DefaultAssay(pbmc)<-"RNA"
pbmc.markers<-findAllMarkers(pbmc, only.pos = TRUE, min.pct = 0.25, logfc.threshold = 0.25)

#sctransform预处理
# method1
DefaultAssay(pbmc)<-"RNA"
pbmc<- NormalizeData(pbmc)
all.genes<- rownames(pbmc )
pbmc<-5caleData(pbmc,features =all.genes)
a1l.markers.RNA<-FindAllMarkers(pbmc, only.pos =T, min.pct = 0.5, logfc.threshold = 0.5)

#使用SCT assay进行差异表达分析
# method2
DefaultAssay(srat)<-"SCT"
a1l.markers.ScT<-findAllMarkers(pbmc, only.pos =T, min.pct = 0.5, logfc.threshold = 0.5)

结果解读

  • gene:基因名称
  • cluster:该基因对应的cluster
  • pct.1:在当前cluster细胞中检测到该基因表达的细胞比例
  • pct.2:在其它cluster细胞中检测到该基因表达的细胞比例
  • avg_logFC:两组间平均logFC,Seurat v4默认log2。正值表示特征在第一组中表达得更高
  • p_val:未调整P-value,数值越小越显著
  • p_val_adj:基于使用数据集中所有特征的bonferroni校正,校正后的p值

P值与P adjust值的区别

假设检验

统计学中的假设检验:用来判断样本与样本,样本与总体的差异是由抽样误差引起还是本质差别造成的统计推断方法。基本是思路类似数学中的“反证法”,是先对总体做出某种假设,然后通过抽样研究的统计推理,对此假设应该是拒绝或者接受。在假设检验中,我们设定原假设H0和备选假设H1:

原假设H0:两组数据没有显著性差异,两组相似
原假设H1:两组数据存在显著性差异,两组不同

在假设检验中,先设定原假设(HO),再设定与其相反的备择假设(H1)。接下来随机抽取样本若在原假设成立的情况下,样本发生的概率(P)非常小,说明原假设不成立,备择假设成立,则拒绝原假设。否则,接受原假设。
判断依据:依据小概率事件的原理,统计学上,把小概率事件在一次实验中看成是实际不可能发生的事件,一般认为等于或小于0.05或0.01的概率为小概率。当P值小于或等于显著性水平时,则拒绝原假设。

Wilcoxon检验:非参的假设检验方法,这意味着它不依赖于任何特定概率分布的数据,它并不需要正态性分布的假设,一般用来检测2个数据集是否来自于相同分布的总体。FindAllMarkers的默认检验方法

Wilcoxon秩和检验:推断连续型变量资料或有序变量资料的两个独立样本代表的两个总体分布
是否有差别。

Bonferroni校验

为什么要进行P值校正?
当同一研究问题下进行多次假设检验时,不再符合小概率原理所说的"一次试验”,需要进行多重检验校正。如果在该研究问题下只要有检验是阳性的,就对该问题下阳性结论的话,对该问题的检验的犯一类错误的概率就会增大。如果同一问题下进行n次检验,每次的检验水准为α(每次假阳性概率为α),则n次检验至少出现一次假阳性的概率会比a大。换句话说,在同时对多组数据进行处理和比较的时候,很可能其中部分数据因为随机效应而超过阈值,造成假阳性结果。而检验的次数越多,出现假阳性的概率就越大。


Bonferroni校正:最严格的多重检验校正方法,该方法是由Carlo Emilio Bonferroni发展的,故称Bonferroni校正。
校正原理:在同一数据集上同时检验n个相互独立的假设,那么用于每一假设的统计显著水平,应为仅检验一个假设时的显著水平的1/n。举个例子:如要在同一数据集上检验两个独立的假设,显著水平设为常见的0.05。此时用于检验该两个假设应使用更严格的0.025。即0.05*(1/2)。假如有10个检验,经过Bonferroni 校正以后,新的p值可以这样计算1-(1-p)^(1/10)=p'p'就是 新的显著性水平。

我们要对数千个基因进行统计测验,所以我们可能只是偶然获得p-values很小的基因(假阳性基因),但是实际,在样本间毫无差异。每个基因的p值只是单一检验(单基因)的结果。检验的基因越多,假阳性率就越高。所以,我们需要对基因的p值进行多重假设检验校正,从而减低假阳性结果在我们的检验中出现的次数。


FindAllMarkers函数默认使用Bonferroni校验。校验的次数取决于测试(基因)的数目,如果我们测试较少的基因,校正就没有那么苛刻。Bonferroni correction: adjusted p-value = raw p-value * number of genes tested

reference

【1】https://www.jianshu.com/p/f5c8f9ea84af

【2】http://www.idata8.com/rpackage/Seurat/FindAllMarkers.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1505567.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

鸿蒙开发(一)-环境配置

鸿蒙开发(一)-环境配置 本篇文章主要介绍下鸿蒙开发环境的配置。 1&#xff1a;下载DevEco Studio 可以直接访问以下网址下载&#xff1a; https://developer.huawei.com/consumer/cn/deveco-studio#download 当前window的使用版本是&#xff1a;devecostudio-windows-3.1…

Openharmony的设备开发流程 Hi3516DV300

安装VirtualBox 这里用VirtualBox 6.1.3 https://download.virtualbox.org/virtualbox/6.1.30/VirtualBox-6.1.30-148432-Win.exe 安装 安装Ubuntu镜像 Ubuntu系统要求&#xff1a;Ubuntu18.04~21.10版本。推荐使用20.04版本&#xff0c;内存16 GB及以上。 https://mirrors…

错误票据 刷题笔记

开数组 读入数据 记录最小值和最大值 每次读入x; 让a[x]; 从最小值开始 向上扫 当扫到a[x]0时候为断号 扫到a[x]>1为重号&#xff1b; 该题的小技巧 未知长度的数据的读入方式 1.首先在头文件敲上 #include<sstream> #include<string> #include<…

SpringCloudGateway理论与实践

文章目录 网关介绍为什么需要网关Gateway 使用gateway pom依赖yml 配置重启测试总结 断言过滤器工厂路由过滤器的种类请求头过滤器默认过滤器全局过滤器总结 Gateway解决跨域 网关介绍 Spring Cloud Gateway 是一个基于Spring Framework 5&#xff0c;由Spring Cloud团队开发的…

FPGA - 科学设计复位信号(XILINX)

1&#xff0c;同步复位与异步复位 简单来说&#xff1a;复位信号与时钟同步&#xff0c;称之为同步复位。 复位信号与时钟不同步&#xff0c;称之为异步复位。 2、xilinx 的复位策略 ① 同步高复位 ② 计数器和状态机必须复位 ③ 能不使用复位尽量不使用复位&#xff0c;比如中…

一键部署Tesseract-OCR环境C++版本(Windows)

环境&#xff1a;Windows 10 工具&#xff1a;git vcpkg vscode cmake 库&#xff1a;Tesseract 一键部署Tesseract-OCR环境C版本&#xff08;Windows&#xff09; 分享这篇文章的原因很简单&#xff0c;就是为了让后续的朋友少走弯路。自己在搜索相关C版本的tesseract部署时…

C/C++指针详解

接下来我们来介绍一下什么是指针&#xff1f; 指针其实就是元素存放地址&#xff0c;更加形象的比喻&#xff1a;在酒店中如果你想要去注必须去付费不然不能住&#xff0c;在计算机也同样如此&#xff08;但是不需要付费哦&#xff09;每当我们使用一个变量或其他需要申请空间…

Unity ShaderGraph实现地面积水效果

先看看效果 右侧参数&#xff0c;能够控制水高&#xff0c;波纹的速度等&#xff0c;但是这个效果需要修改高度图和凹凸图&#xff0c;毕竟有些模型并不是平面&#xff0c;对于具有斜面的模型就需要修改贴图。 ShaderGraph如下

STM32CubeIDE基础学习-STM32CubeIDE软件程序仿真调试

STM32CubeIDE基础学习-STM32CubeIDE软件程序仿真调试 前言 一般编写完程序后都会进行编译&#xff0c;看结果是否有存在语法错误&#xff0c;确认没有语法错误之后再进行代码的下载观察硬件执行是否和软件编程预期的结果一致&#xff0c;如果发现硬件执行达不到预期现象&#…

PHP 高仿抖音滑动H5随机短视频源码

源码名称&#xff1a;高仿抖音滑动H5随机短视频源码 源码介绍&#xff1a;一款带后台的高仿抖音滑动H5随机短视频源码&#xff0c;带打赏功能。支持之定义视频源&#xff0c;可设置本地读取播放源或站外的API播放源链接。支持点击跳转联系QQ或微信。支持广告弹窗&#xff0c;可…

如何使用固定公网地址SFTP远程传输文件至安卓Termux本地目录?

文章目录 1. 安装openSSH2. 安装cpolar3. 远程SFTP连接配置4. 远程SFTP访问4. 配置固定远程连接地址 SFTP&#xff08;SSH File Transfer Protocol&#xff09;是一种基于SSH&#xff08;Secure Shell&#xff09;安全协议的文件传输协议。与FTP协议相比&#xff0c;SFTP使用了…

主升浪趋势票如何去做,看完这2个例子就可以终结了

我们在这个市场是否能持续赚钱不被淘汰取决于我们自身迭代速度&#xff0c;向市场学习本身就是向市场资金共识方向靠拢&#xff0c;接近客观&#xff0c;远离个人偏见的主观。看清这一点&#xff0c;你才有可能性&#xff0c;否则连可能性都不会有。 在上述问题中&#xff0c;虽…

数字化审计智慧

简析内部审计数字化转型的方法和路径 内部审计是一种独立的、客观的确认和咨询活动&#xff0c;包括鉴证、识别和分析问题以及提供管理建议和解决方案。狭义的数字化转型是指将企业经营管理和业务操作的各种行为、状态和结果用数字的形式来记录和存储&#xff0c;据此再对数据进…

实验三 虚拟内存管理-实验部分

目录 一、知识点 1、虚拟存储 1.1、虚拟存储需求 1.2、虚拟存储的局部现象 1.3、虚拟页式存储管理 1.4、虚拟页式存储管理总流程 2、页面置换算法 2.1、页面置换算法的概念 2.2、常见的局部页面置换算法 3、虚拟存储管理实现分析 3.1、总体流程介绍 3.2、关键数据结…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:RotationGesture)

用于触发旋转手势事件&#xff0c;触发旋转手势的最少手指为2指&#xff0c;最大为5指&#xff0c;最小改变度数为1度。 说明&#xff1a; 从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 接口 RotationGesture(value?: …

【Python】time模块

专栏文章索引&#xff1a;Python 目录 一、介绍​编辑 二、常用函数​编辑 一、介绍 Python 的 time 模块提供了处理时间的函数。 二、常用函数 1.time()&#xff1a;返回当前时间的时间戳&#xff08;从1970年1月1日开始计时的秒数&#xff09;。 import timecurrent_ti…

C语言从入门到熟悉------第一阶段

本文介绍 本文创作参考如下图书&#xff1a; 本书作者&#xff1a;吴明杰、曹宇、吴丹。 ISBN&#xff1a;9787111553076 计算机语言发展的三个阶段 先来看计算机语言的发展主要分为如下图三个阶段。 C语言的优点 C语言的优点有三个&#xff1a; 1&#xff09;代码量小。 …

2024年装修新潮流,你get到了吗?福州中宅装饰,福州装修

在装修这个行业&#xff0c;每年都会出现一些新的设计理念和流行趋势&#xff0c;同时也存在一些传统的设计理念。今天&#xff0c;我们就来对比一下2024年装修设计的传统与新趋势。 传统设计理念 1. 落地电视柜 在过去&#xff0c;落地电视柜被认为是一种实用的设计&#xf…

C++椭圆检测论文复现 Ubuntu 22.04+Vscode+opencv3.4

复现的代码 本博客旨在复现论文《An Efficient High-quality Ellipse Detection》&#xff0c;该文章本来只有Matlab的代码实现&#xff0c;后来被islands翻译成了c 库&#xff0c;大家可以参考islands发在知乎上的文章高质量椭圆检测库&#xff0c;C的代码链接。 使用环境 U…

java SSM流浪宠物救助与领养myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM流浪宠物救助与领养管理系统是一套完善的web设计系统&#xff08;系统采用SSM框架进行设计开发&#xff0c;springspringMVCmybatis&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系…