GC偏好

测序中的GC偏好指的是基因组上GC含量在50%左右的区域更容易被测到,产生的reads更多,这些区域的覆盖度更高,

在高GC或者低GC区域,不容易被测到,产生较少的reads,这些区域的覆盖度更少。

用基因组单位长度的bin中的GC含量作为横坐标,覆盖度作为纵坐标作图,可以明显的看到该趋势。这种趋势在100kb为单位的bin中依然存在。

如图A中可以看出随着GC含量的增加,counts是先增加后减少,bin的大小为10kb。图C可以看出大部分片断的GC含量0.4到0.6之间。

GC偏好也存在其他地方,比如基因编码区内密码子的最后一位,C碱基往往占优势;基因的长度和GC含量成相关性;

Aquifex aeolicus 的基因组整体GC含量是43%,而核糖体RNA操纵子的GC含量是65%。

如图,鸡(Gallus_gallus-5.0)基因组的GC含量与基因密度之间的散点图和拟合曲线,相关性非常明显。

影响

举个例子,

1)在检测拷贝数的时候,GC含量低或者高的区域,其覆盖度小于GC含量中等的,但不意味着仅仅根据测序的覆盖度,就认为GC含量中等的拷贝数比高/低GC含量区域的高。

2)在做RNA测序分析的时候,GC含量高/低的区域reads数少,并不一定说明这个基因的表达量低。

3)在做基因组拼接的时候,因为GC偏好的存在,高/低GC含量的区域被测的少,这些区域的拼接难度就较大。

来源

测序中GC偏好不均衡的结果来源于多个因素,比如对文库进行PCR扩增的时候,cluster簇扩增的时候,测序的时候,不同实验室之间,实验批次之间,不同的样本类型等等。

这些因素都会影响测序数据。

校正

因为GC偏好可能会对特定的分析结果造成影响,放大变异影响真实信息,所以需要校正。有一种简单的校正,就是先统计每个GC含量(0, 1, 2, 3,…, 100%)下的特定bin的平均覆盖度,再计算所有bin的平均覆盖度,用来校正测序得到的覆盖度。

特定bin校正后的覆盖度 = 该bin的原始覆盖度 *(所有bin的平均覆盖度/与该bin的有相同GC含量的所有bin的平均覆盖度)

还有算法计算了每个bin的GC含量与观察到的depth之间的关联性,拟合出一条趋势线,用原始的覆盖度减去该趋势。

结果

有研究表明在需要考虑GC偏好带来的影响的实验中,通过GC校正能显著改善结果。

参考:

Yoon, Seungtai, et al. “Sensitive and accurate detection of copy number variants using read depth of coverage.” Genome research 19.9 (2009): 1586-1592.
Benjamini, Yuval, and Terence P. Speed. “Summarizing and correcting the GC content bias in high-throughput sequencing.” Nucleic acids research 40.10 (2012): e72-e72.
Tilak, Marie-Ka, et al. “Illumina library preparation for sequencing the GC-rich fraction of heterogeneous genomic DNA.” Genome biology and evolution 10.2 (2018): 616-622.
https://en.wikipedia.org/wiki/GC-content
https://www.sciencedirect.com/topics/neuroscience/gc-content

GC偏好的更多相关文章

  1. GC偏好的校正与偏好程度的评估

    在二代测序仪上测出的数据,通常都会表现出测序深度与GC 含量的相关性,称为GC bias. GC bias校正 为了后续生物信息分析更加准确,通常需要做GC bias的校正. 2010 年 steve ...

  2. 10X Genomics vs. PacBio

    10X Genomics已经广泛应用于单细胞测序.组装领域,现在也是火的不行. 10X Genomics原理 通过将来自相同DNA片段(10-100kb)的reads加上相同的barcode,然后在i ...

  3. Pacbio 纯三代组装复活草基因组

    对于植物等真核生物基因组来说,重复序列, 多倍体,高杂合度等特征在利用二代数据进行组装的时候都会有很大的问题: 利用二代数据组装出来的基因组,大多达不到完成图的水准,通常只是覆盖到编码蛋白的基因区域, ...

  4. Java 8 VM GC Tunning Guide Charter 7-8-b

    第七章 并发gc Java 8提供两种并发gc,CMS和G1 Concurrent Mark Sweep (CMS) Collector This collector is for applicati ...

  5. GC参考手册 —— GC 调优(命令篇)

    运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎鼎的VisualVM,IBM的Memory Analyzer ...

  6. 46张PPT讲述JVM体系结构、GC算法和调优

    本PPT从JVM体系结构概述.GC算法.Hotspot内存管理.Hotspot垃圾回收器.调优和监控工具六大方面进行讲述.(内嵌iframe,建议使用电脑浏览) 好东西当然要分享,PPT已上传可供下载 ...

  7. C++随笔:.NET CoreCLR之GC探索(4)

    今天继续来 带大家讲解CoreCLR之GC,首先我们继续看这个GCSample,这篇文章是上一篇文章的继续,如果有不清楚的,还请翻到我写的上一篇随笔.下面我们继续: // Initialize fre ...

  8. C++随笔:.NET CoreCLR之GC探索(3)

    有几天没写GC相关的文章了哈,今天我讲GC的方式是通过一个小的Sample来讲解,这个小的示例代码只有全部Build成功了才会有.地址为D:\coreclr2\coreclr\bin\obj\Wind ...

  9. C++随笔:.NET CoreCLR之GC探索(2)

    首先谢谢 @dudu 和 @张善友 这2位大神能订阅我,本来在写这个系列以前,我一直对写一些核心而且底层的知识持怀疑态度,我为什么持怀疑态度呢?因为一般写高层语言的人99%都不会碰底层,其实说句实话, ...

随机推荐

  1. hosts 屏蔽定位域名

    通过修改hosts屏蔽定位服务的域名 #屏蔽百度地图 1.0.0.1 api.map.baidu.com 1.0.0.1 ps.map.baidu.com 1.0.0.1 sv.map.baidu.c ...

  2. 刷题记录:[BUUCTF 2018]Online Tool

    目录 刷题记录:[BUUCTF 2018]Online Tool 一.知识点 1.escapeshellarg和escapeshellcmd使用不当导致rce 刷题记录:[BUUCTF 2018]On ...

  3. [转]c++多线程编程之pthread线程深入理解

    多线程编程之pthread线程深入理解         Pthread是 POSIX threads 的简称,是POSIX的线程标准.           前几篇博客已经能给你初步的多线程概念.在进一 ...

  4. Oracle系列八 高级子查询

    子查询 子查询 (内查询) 在主查询执行之前执行 主查询(外查询)使用子查询的结果 多列子查询 主查询与子查询返回的多个列进行比较 多列子查询中的比较分为两种: 成对比较 问题:查询与141号或174 ...

  5. js组件常用封装方法。。。。。【组件封装】 ★★★★★★

    公共弹窗js写法:mcake弹窗封装Dialog.js function Dialog(bg,els,opts) { this.$els = $(els); this.$Dialogbg = $(bg ...

  6. OpenShift 4.1 基本问题探索

    因为在OpenShift 4.1环境中不建议直接登录集群主机操作,因此很多操作可能需要在外部的Client VM上完成.当然用rhel的worker node的同事也可以和原来习惯保持一致. 这里记录 ...

  7. [LeetCode] 303. Range Sum Query - Immutable 区域和检索 - 不可变

    Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive ...

  8. Bazel安装及使用入门

    Bazel [文档][https://docs.bazel.build/versions/1.1.0/bazel-overview.html] MacOS安装 brew tap bazelbuild/ ...

  9. postgresql数据库中多个Schemas互相访问

    背景: 用postgresql创建了一个数据库userDataBase,在这个数据库中创建了Schemas userA,Schemas userB,Schemas userC三个Schemas之后,给 ...

  10. 谷歌浏览器调试swoole长连接方法

    谷歌浏览器调试swoole长连接方法network标签里面的ws 看frames