使用ChIPSeeker进行ChIP-seq, ATAC-seq,cuttag等富集峰的基因组注释

news2025/1/17 23:11:58

二代测序产生的数据类型

常规的下一代高通量测序(next generation sequencing, NGS)实验通常产生大量短片段(reads),通常我们需要将这些reads比对到参考基因组/转录组上,即将它们置于生物学上有意义的基因背景下,才能获得有意义的结果。一般我们认为会产生两种类型的数据(当然两者并无严格意义上的区分):

   1.表达类

一般为固定区域,关注于定量比较。例如转录组测序结果中,数据库中已有mRNA基因的表达,lncRNA基因的表达等,这类结果一般以矩阵形式存储,第一列是名字,其余列是表达值。CircRNA表达,miRNA表达等归于此类。

    2.基因组区域(富集峰)

一般区域不固定,关注于定性。例如ChIP-seqATAC-seqCut&tag等比对后获得的富集峰。一般以bed格式存储,第一列是染色体,第二列是富集峰起始坐标,第三列是富集峰终止坐标(图1)。eccDNAm6AMeDIP等归于此类。

1. 表达类(区域固定) vs 富集峰类(区域不固定)

什么是富集峰注释?

基于抗体富集的原理,众多reads片段比对到基因组上某区段,会形成一个类似山峰的富集区。由于我们是在基因组背景下进行生物医学研究的,因此需要将基因组区域(富集峰,peak)与基因联系起来,即确定峰落在哪个基因上,落在该基因的哪种基因组特征上,距离TSS的位置是多少bp等,然后才能进行后续的功能研究。这个过程叫做富集峰注释(peak annotation,图2)。如果仅关注某几个区域,就不需要用软件注释,建议直接用IGV或者UCSC Genome Browser查看。

富集峰注释的难点

虽然CHIP-Seq已经有近20年的历史,然而由于基因组上基因的结构非常复杂,不同注释软件在具体细节处理上往往不同,从而导致同一批数据,用不同的软件进行注释,获得的结果略有不同(大同小异)

  1. 注释到转录本还是注释到基因?

由于一个基因可能包含多个转录本,因此,我们在注释的时候,到底是注释到基因水平还是注释到转录本水平?

     2.基因位置重叠怎么处理?

由于同一个位置可能存在多个基因,如果两个基因的坐标有重叠,我们到底是注释到A基因还是注释到B基因?

    3.最邻近怎么判断?

如果富集峰的中点(或者顶点)正好落在两个基因的中间,那么这个富集峰是注释到A基因还是注释到B基因,如何定义最邻近?

    4.基因组特征如何分类?

不同文章、软件对基因组特征分类不同,例如有的分为promoterintronexon5’UTR3’UTR;有的分为:upstreampromoterintronexondownstream

    5.promoter如何定义?

不同文章、软件定义promoter区也不同,有的定义TSS上游3K到下游3K都是promoter,有的定义TSS上游200bp到下游800bp是启动子。

    6.不同基因组特征的注释优先级

当一个很长的富集峰横跨同一个基因的intronexon3’UTR时候,这个富集峰该分到什么特征中呢?

    7.注释数据库版本问题

同样是human hg38,如果注释库版本不同,那么注释结果也会有差异。原因是:虽然基因组序列不变,然而注释库却更新频繁,有基因会更新坐标,有基因会添加新的转录本,有基因会从非编码基因变成编码基因等。

2. 富集峰注释及难点

凡此种种,给我们的注释工作带来了巨大困难。然而,作为用户(调包侠),我们基本不用深究注释背后的细节。我们需要做的就是:找一个引用比较多的注释工具,默认参数进行注释即可。

常见富集峰注释软件

软件

语言

默认支持物种

ChIPSeeker

R

有注释文件即支持

PAVIS

在线

人、大鼠、小鼠(细分编码和非编码等)

Homer

Perl

有注释文件即支持

GREAT

在线

humanmouse

ChIPpeakAnno

R

有注释文件即支持

1. 常见富集峰注释工具

为什么要用新版注释?

由于注释数据库频繁更新,如果你使用的注释还是N年前的,那么reviewer在公共数据库(例如UCSCEnsemblNCBI)上使用网站默认版本查询时,就有可能查不到你的基因,或者你N年前的数据,与新的数据联合分析时,由于使用的注释数据库不同,取交集时,会漏掉一些基因。因此,我们强烈建议所有的测序数据,包括RNA-seqChIP-seqm6A-seq等都使用同一套注释库进行注释分析,并在结果中明确说明所使用的注释库版本。这对于在不同公司,不同时间做的测序结果来说,是非常重要的。

由于上述所列在线工具都是N年前的,所以我们使用ChIPSeeker R包搭建了一个简易的在线peak注释工具,可以对人、大鼠、小鼠的ChIP-seqATAC-seqcut&tag等富集峰进行一键注释。

1.打开绘图页面

首先,使用浏览器(推荐chrome或者edge)打开ChIP-Seq富集峰注释页面。左侧为常见作图导航,中间为数据输入框和可选参数,右侧为描述和结果示例。也可以在搜索框中搜索peak,找到注释页面。

http://www.bioinformatics.com.cn/basic_chipseq_atacseq_peak_annotation_by_chipseeker_t017

3. 注释页面

2.示例数据

点击右侧示例数据链接下载excel格式的示例数据。

示例数据包括4列,分别为:chrstartend-LOG10(pvalue)

注意:为了遵循各大数据库的使用,这里染色体必需使用chr+数字,即:chr1-22chrXchrYchrM等。

4. 输入数据示例

3.粘贴示例数据

直接拷贝示例数据中的ABCD四列数据,然后粘贴到输入框。注意必需带每一列的说明行(header),此行将用于最终的excel表头。

注意:不是拷贝excel文件,是拷贝excel文件里边的数据。另外粘贴到输入框后,格式乱了没关系,只要在excel中是整齐的就行。同时数据矩阵中不能有空的单元格,中文字符等。

5. 必需输入

4.修改参数,并提交

我们设置了promoter区的范围选项,及注释所用的物种及注释版本选项(例如human所使用的是hg38基因组,注释版本为Ensembl v108),当前仅支持humanmouserat。后续将支持更多物种。

6. 可选参数

5.提交出图

粘贴好输入数据,调整好参数(重点是物种及注释版本)后,点击提交按钮,约30秒钟后(取决于数据多少),会在页面右侧出现peak分类饼图及excel格式的数据下载链接,请下载后解压查看。

7. 结果页面

8. 注释结果

结果说明

peak_class为界,结果包括两部分:左侧为输入的内容,其中start添加了1 bp(因为bed格式是0-based,这里变成了1-based),并添加了peak长度信息(end-start+1);右侧为注释信息,包括:peak分类,基因位置,基因/转录本注释等信息。并基于peak_class的数据绘制了peak分布饼图。

注意:

     1.由于peak注释与注释库及优先级关系密切,因此最终放在paper里边的图,以IGV可视化结果为准。

     2.输入peak默认不考虑链,如需更精细地注释,请参考ChIPSeeker R包。

     3.默认一个peak仅注释到一个转录本

没有预览就是没有出图/结果,这时请参考示例数据,检查输入数据的格式。或者使用我们提供的小工具 pyinstaller打包python脚本为exe可执行文件实例:错误排查小脚本检查输入。

参考文献:

1. Yu G, Wang LG, He QY. ChIPseeker: an R/Bioconductor package for ChIP peak annotation, comparison and visualization. Bioinformatics. 2015 Jul 15;31(14):2382-3. doi: 10.1093/bioinformatics/btv145. Epub 2015 Mar 11. PMID: 25765347.

2. Huang W, Loganantharaj R, Schroeder B, Fargo D, Li L. PAVIS: a tool for Peak Annotation and Visualization. Bioinformatics. 2013 Dec 1;29(23):3097-9. doi: 10.1093/bioinformatics/btt520. Epub 2013 Sep 4. PMID: 24008416; PMCID: PMC3834791.

3. Heinz S, Benner C, Spann N, Bertolino E, Lin YC, Laslo P, Cheng JX, Murre C, Singh H, Glass CK. Simple combinations of lineage-determining transcription factors prime cis-regulatory elements required for macrophage and B cell identities. Mol Cell. 2010 May 28;38(4):576-89. doi: 10.1016/j.molcel.2010.05.004. PMID: 20513432; PMCID: PMC2898526.

4. McLean CY, Bristor D, Hiller M, Clarke SL, Schaar BT, Lowe CB, Wenger AM, Bejerano G. GREAT improves functional interpretation of cis-regulatory regions. Nat Biotechnol. 2010 May;28(5):495-501. doi: 10.1038/nbt.1630. Epub 2010 May 2. PMID: 20436461; PMCID: PMC4840234.

5. Zhu LJ, Gazin C, Lawson ND, Pagès H, Lin SM, Lapointe DS, Green MR. ChIPpeakAnno: a Bioconductor package to annotate ChIP-seq and ChIP-chip data. BMC Bioinformatics. 2010 May 11;11:237. doi: 10.1186/1471-2105-11-237. PMID: 20459804; PMCID: PMC3098059.

微生信助力高分文章,用户73000+,引用990+

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

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

相关文章

《MySql学习》 Select 查询语句慢的非性能原因

一.查询被阻塞 A会话执行 查询操作,长时间没有返回信息,此时我们就可以去排查一下是否是被阻塞了 select * from words 被阻塞的原因有很多,首先列举第一种情况 1.等MDL锁 当我们执行DDL语句时,会自动给表加上MDL写锁。当执行DML和DQL时&…

电压放大器和电流放大器的区别是什么意思

在日常电子实验测试中,很多电子工程师都会使用到电压放大器和电流放大器,但是很多新手工程师却无法区分两者的区别,下面就让安泰电子来为我们讲解电压放大器和电流放大器的区别是什么意思。 一、电压放大器介绍: 电压放大器是一种…

Android系统10 RK3399 init进程启动(四十七) Android init 进程整体代码逻辑简述

配套系列教学视频链接:安卓系列教程之ROM系统开发-百问100ask说明系统:Android10.0设备: FireFly RK3399 (ROC-RK3399-PC-PLUS)前言本文简单描述一下android init祖先进程启动的基本执行流程,让大家有一个整…

Java基础:爬虫

1.本地爬虫 Pattern:表示正则表达式 Matcher:文本匹配器,作用按照正则表达式的规则去读取字符串,从头开始读取。在大串中去找符合匹配规则的子串。 1.2.获取Pattern对象 通过Pattern p Pattern.compile("正则表达式");获得 1.3.获取Matc…

poi-tl生成word多张图表及图片

模板 生成效果 实现代码 官方文档 引入word依赖 <dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.10.3</version></dependency>数据准备 Map<String, Object> dataObj new…

如何使用awsEnum基于提供的凭证枚举AWS云端资源

关于awsEnum awsEnum是一款针对AWS云端资源安全的审计工具&#xff0c;该工具基于Python 3开发&#xff0c;可以帮助广大研究人员根据输入的凭证信息来枚举目标AWS云端资源和AWS服务。 当前该工具仍处于测试过程中&#xff0c;发布的为beta版本。该工具的主要目标是为了帮助广…

Apache Hive DML语句及内置函数

目录1、Hive SQL DML语法之加载数据1.1 Load加载数据1.2 Insert插入数据2、DML语法之查询数据3、Hive 常用函数3.1 Hive 常用的内置函数3.1.1 字符串函数3.1.2 日期函数3.1.3 数学函数3.1.4 条件函数1、Hive SQL DML语法之加载数据 1.1 Load加载数据 在Hive中建表成功之后&am…

LearnOpenGL-入门-7.变换

本人刚学OpenGL不久且自学&#xff0c;文中定有代码、术语等错误&#xff0c;欢迎指正 我写的项目地址&#xff1a;https://github.com/liujianjie/LearnOpenGLProject LearnOpenGL中文官网&#xff1a;https://learnopengl-cn.github.io/ 文章目录变换向量单位向量向量点乘向…

Linux INPUT 子系统实验

目录 一、input 子系统简介 input_dev 结构体 二、驱动编写 1、宏定义 2、按键结构体和按键中断结构体 3、中断处理函数 4、定时器处理函数 5、注册input_dev 6、驱动出口 代码 验证 打印现象解析 1、input_event 结构体 2、打印解释 三、APP编写 ​ app代码如下 验…

【操作方法】windows开启、关闭防火墙方法

【操作方法】windows开启、关闭防火墙方法一、命令法1.启动或关闭Windows Default 防火墙2.选择启动或关闭二、鼠标点击法1.首先将查看类型选择为“类别”2.系统和安全3.Windows Defender 防火墙4.启动或关闭Windows Default 防火墙5.选择启动或关闭一、命令法 点击按键WinR打…

基于OBD系统的量产车评估测试(PVE)

在轻型汽车污染物排放限值及测量方法&#xff08;中国第六阶段&#xff09;中&#xff0c;除了对汽车尾气排放等制定了更为严格的限制之外&#xff0c;也在OBD系统认证项目中增加了新的要求——量产车评估&#xff08;Production Vehicle Evaluation&#xff09;测试。该测试由…

在码匠中使用 Microsoft SQL Server

目录 在码匠中集成 Microsoft SQL Server 在码匠中使用 Microsoft SQL Server 关于码匠 SQL Server 是 Microsoft 公司推出的关系型数据库管理系统。具有使用方便、可伸缩性好、与相关软件集成程度高等优点。Microsoft SQL Server 是一个功能全面的数据库平台&#xff0c;使…

Lecture1 Welcome Stanford CS229 Machine Learning|2018 Autumn|吴恩达机器学习

1:15:20目录机器学习类比跳棋游戏&#xff0c;理解机器学习的概念&#xff1a;很多人坐在电脑旁玩游戏或跳棋好几天&#xff0c;这就是经验E&#xff1b;任务T是指下跳棋的任务&#xff1b;性能度量P可能是指在与下一个对手下棋时/在下一场跳棋中获胜的机会是多少&#xff1f;监…

安装TDengine 服务端和客户端——客户端连不上问题解决

客户端连不上问题解决1. 下载安装服务端2. 下载安装客户端2.1 修改hosts文件2.2 修改客户端taos.cfg 文件安装中出现的问题问题解决1. 下载安装服务端 根据服务端系统不同 下载不同的安装包 &#xff0c;按照参考网址&#xff1a;https://docs.tdengine.com/get-started/packa…

接口电子器件中的光耦合器模块

工业电子设备在电气噪声和机械挑战性的环境中运行。问题在于&#xff0c;自动化、控制和仪表组件依赖于没有电气干扰或失真的精确信号来正常运行。因此&#xff0c;光耦合器模块通常被工程师用作信号源以及电源、工业控制和其他组件之间的信号保护中介。 在工业应用中&#xf…

基于自定义训练函数的BP神经网络回归分析

目录 背影 BP神经网络的原理 BP神经网络的定义 BP神经网络的神经元 BP神经网络的激活函数 BP神经网络的传递函数 基于自定义训练函数的BP神经网络回归分析 背影 BP神经网络是一种成熟的神经网络&#xff0c;拥有很多训练函数&#xff0c;传递函数&#xff0c;激活函数&#x…

创建自助服务知识库的指南

在SaaS领域&#xff0c;自助文档是你可以在客户登录你的网站时为他们提供的最灵活的帮助方式&#xff0c;简单来说&#xff0c;一个自助知识库是一个可以帮助许多客户的文档&#xff0c;拥有出色的自助服务知识库&#xff0c;放在官网或者醒目的地方&#xff0c;借助自助服务知…

vue H5跳转小程序报错:config:fail,Error: 系统错误,错误码:63002,invalid signature

微信开发者工具下载地址与更新日志 错误码&#xff1a;63002,invalid signature 无效的签名 附录5 微信网页开发 /JS-SDK说明文档 微信 JS 接口签名校验工具 全局返回码说明 ​ 排查步骤 确认签名算法正确&#xff0c;可用 http://mp.weixin.qq.com/debug/cgi-bin/sand…

【Python学习笔记】第二十二节 Python XML 解析

一、什么是XMLXML即ExtentsibleMarkup Language(可扩展标记语言)&#xff0c;是用来定义其它语言的一种元语言。XML 被设计用来传输和存储数据。XML 是一套定义语义标记的规则&#xff0c;它没有标签集(tagset)&#xff0c;也没有语法规则(grammatical rule)。任何XML文档对任何…

2023年金三银四必备软件测试常见面试题1500问!!!【Linux篇】

六、Linux6.1 Linux系统你是怎么用的?[在测试1、执行的过程中&#xff0c;我们发现的bug&#xff0c;有时候需要定位bug&#xff0c;协助开发修复bug时需要在linux里通过命令tail-200或tail-500查看当天的日志的后面多少行或者前面多少行定位bug或者通过tail -f来查看日志里的…