ATAC-seq基础分析

1. ATAC-seq和chip-seq不一样的地方:

--no-mixed 不允许一个reads比对上,另一个比对不上。要么一对都比对上,要么都比对不上。

--no-discordant允许的插入片段长度的范围内,不要比对的太离谱。比如:两端reads都比对上,但一条比对到1号染色体的起始位置,另一条比对到10M以外的地方,显然不合理;或者一条比对到1号染色体,一条比对到2号染色体;

--maxins默认是500bp,最好设置成1000~2000.

  • Peak Calling

对于ATAC-seq,我们关心的区域可能并不是中间这个区域,因为中间的区域可能是一个核小体、也可能是一个NFR,也可能是多个核小体,也就是插入片段长度可能会在50-600bp之间。

  • 我们想知道的是染色质开放的区域,也就是对酶切敏感的区域,也就是超敏位点,DHS(DNaseI Hypersensitive Sites),Tn5酶切到了什么地方,那个cut site就是超敏位点。
  • ATAC的shift
  • macs2/mac3这个软件在call peak的时候,如果设置BAMPE,那么shiftextsize都失效。被当成chip-seq往右移。
js 复制代码
1. 我们希望peak的峰值在reads的末端,所以要把reads从3'往5'移动,
所以把左端reads的起始位点往左移动,移动多少比较随意,没有固定的值。

2. 比如说移动的shift值是-100,再需要将起始位点往右延申200。shift=-100,extsize=200。

3. shift=-75,extsize=150,也可以,只不过得到的峰更尖一些。

4. 不管是macs2还是macs3,都有这个参数:-f BAM/BAMPE,
只要设置-f BAMPE,那么你设置的shift=-100, extsize=200就会失效,
原因是:macs这个软件最早是为chip-seq设计的,都是往右边移动,只要是双末端测序,
这个软件能自己估算插入片段长度。

5. 解决办法就是设置-f BAM 加上 shift, extsize参数。因为事实上,即使是BAMPE,
它右端reads是不使用的,即使是双端reads,另一端reads只用来计算插入片段长度,
之后右端的reads并不会用来call peak,不用来看峰的大小,峰的位置。
  • 即使设置错误了,影响也不会特别大。虽然说插入片段长度50-600,但更多的是在NFR区域,所以最终插入片段长度就100-200bp左右,peak在基因组前后移动个50或100,对整个影响不大。中间重叠的区域还是在peak内部。
  • broad还是narrow peak的问题,如果研究转录因子,就用narrow;如果还有其他的蛋白或不清楚什么蛋白,就用broad。
相关推荐
kyriewen5 小时前
别再 console.log 了:5 个 Chrome DevTools 调试技巧,用过就回不去了
前端·javascript·面试
IT_陈寒7 小时前
Python搞不定字符串编码?这破玩意坑我两小时!
前端·人工智能·后端
DigitalOcean8 小时前
Laravel 开发者已在 DigitalOcean 上开通超过 10 万台服务器
前端·laravel
星始流年8 小时前
从 Tool 到 Skill——基于 LangChain 的服务端Skill实现
前端·langchain·agent
李惟8 小时前
开源本地通信库,纯客户端 RPC,像聊天一样通信
前端
YAwu118 小时前
深入解析 React 炫彩鼠标跟随标题组件:从坐标定位到动画性能
前端·react.js
GuWenyue8 小时前
排序效率低?5分钟吃透快速排序,性能飙升至O(nlogn)
前端·javascript·面试
OpenTiny社区9 小时前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
叁两9 小时前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
何时梦醒9 小时前
深入理解递归与快速排序 —— 从基础入门到手写实现
前端·javascript