本文学习费章军老师文章Genome of Solanum pimpinellifolium provides insights into structural variants during tomato breeding 如何鉴定SV。

其流程见 https://github.com/GaoLei-bio/SV

1 SV-calling

1.1 基因组间比较

简单思路: 2个基因组比较--》调取unique 比对--〉二代reads比对过滤

软件准备:

  • minimap2 (v2.11 or higher)
  • sam2delta.py (RaGoo 下的一个脚本,将sam格式变为nucmer的格式)
  • Assemblytics
  • samtools (v1.5 or higher)
  • blast+
  • python 2.7

    -- operator

    -- pathlib

    -- argparse

    -- os

    -- re

    -- subprocess

    -- sys

数据准备:

  • reference genome
  • query genome (二者质量较高,且相关物种;$\color{red}{染色体命名规则;xxxchr01, xxxchr02, contig等合并为 xxxchr00}$)
  • 两个基因组所对应的illumine reads (因为组装不完整,导致没有组装的区域被认为是delete,因此用二代数据过滤SV)
  • QryRead2Ref.bam (sorted, rmdup; query reads 比对到reference;$\color{red}{可以bwa-mem进行比对,名字必须是这个}$)
  • RefRead2Qry.bam (sorted, rmdup;ref reads比对到Query genome)
  • Ref_self.bam; 同上
  • Qry_self.bam; 同上

$\color{red} {上述4个bam文件必须sort,且去重复,index,且命名和上述统一,且均放于工作目录}$

简单操练一下:

将下载的所有脚本置于一个文件即可

## 运行SV_calling.sh 即可
Command:
bash path_to_SV_calling_script/SV_calling.sh \
path_to_SV_calling_script \
<Reference_genome_file> \
<Query_genome_file> \
<Prefix_for_outputs> \
<number of threads> \
<min_SV_size> \
<max_SV_size> \
<assemblytics_path>
### 具体数据
bash path_to_SV_calling_script/SV_calling.sh \
path_to_SV_calling_script \
SL4.0.genome.fasta \
Pimp_v1.4.fasta \
SP2SL 24 10 1000000 \
path_to_assemblytics_scripts ## 上述的4个bam文件必须放在当前工作目录下

结果:

  • SP2SL.Master_list.tsv
  • SP2SL.NR.bed (用于下一步)

1.2 pacbio reads进行鉴定SV (可选)

数据准备:

  • Prefix_for_outputs.NR.bed: 上一步结果
  • Reference_genome_file: fasta
  • Query_genome_file: fasta
  • Ref_base_pbsv_vcf (利用pbsv 将query pacbio reads比对到reference genome 获得SV)
  • Qry_base_pbsv_vcf (利用pbsv 将reference pacbio reads比对到Query genome 获得SV)

直接操练

  Command:
bash path_to_SV_calling_script/SV_PacBio.sh \
path_to_SV_calling_script \
<Reference_genome_file> \
<Query_genome_file> \
<Prefix_for_outputs> \
<number of threads> \
<Ref_base_pbsv_vcf> \
<Qry_base_pbsv_vcf> ## 具体例子
For example:
bash path_to_SV_calling_script/SV_PacBio.sh \
path_to_SV_calling_script \
SL4.0.genome.fasta \
Pimp_v1.4.fasta \
SP2SL 24 \
PimpReads2SL4.0.var.vcf \
HeinzReads2Pimp.var.vcf

结果:

  • SP2SL.Master_list.tsv

可将上述两种方法得到的SV结果进行合并即可。

2 SV-genotyping

主要程序 SV_genotyping.py, 且在Example中有实例文件

准备数据:

  • 重测序数据分别比对到Query 和Ref genome (bwa即可【️ bp错配】,去重复,)并排序
Parameters:
INPUT=Example/Example_SV.tsv # Path to your input SV file. A example of input SV file is provided.
sample=Sample_name # Sample name, prefix of outputs
Reference=Reference_genome # Path to Reference genome, fasta format, indexed by samtools faidx
Query=Query_genome # Path to Query genome , fasta format, indexed by samtools faidx
Ref_bam=Reference_base_bam # Sorted bam file with reads aligned on Reference genome
Qry_bam=Query_base_bam # Sorted bam file with reads aligned on Query genome
Mismath=3 # Allowed mismath percentage of aligned read ## 实例数据
python SV_genotyping.py Example/Example_input.tsv \
Example Example/Reference.fasta \
Example/Query.fasta \
Example/Sample.Ref_base.bam \
Example/Sample.Qry_base.bam 3

结果

  • Example.GT.txt.
head Example.GT.txt.
#Genotype: R for homozygous Reference genotype; Q for homozygous Query genotype; H for Heterozygous genotype; U for Undetermined.
SV_ID Example_1m
SV_w_5206 Q
SV_w_5207 Q
SV_w_5209 R
SV_w_5210 Q
SV_w_5211 Q
SV_w_5212 H
SV_w_5213 Q
SV_w_5214 Q

欢迎扫码交流

参考

2基因组间鉴定SV的更多相关文章

  1. Assemblytics鉴定基因组间SV

    Assemblytics, 发表在Bioinformaticshttp://www.ncbi.nlm.nih.gov/pubmed/27318204,鉴定基因组间SV. Githup,https:// ...

  2. 【豆科基因组】大豆(Soybean, Glycine max)泛基因组2020Cell

    目录 一.前沿概述 二.主要结果 重测序.组装与注释 泛基因组 SV特征 PAV与古多倍化,WGD事件 基因SV与基因融合 SV与大豆驯化 SV影响基因表达及其与性状关联 一.前沿概述 Pan-Gen ...

  3. 【豆科基因组】绿豆Mungbean, Vigna radiata基因组2014NC

    目录 来源 一.简介 二.结果 基因组组装 重复序列和转座子 基因组特征和基因注释 绿豆的驯化 豆科基因组复制历史 基于转录组分析的豇豆属形成 绿豆育种基因组资源 三.讨论 四.方法 材料 组装 SN ...

  4. Mol Cell Proteomics. | 用于鉴定新型融合转录本及其在癌细胞中的潜在翻译产物的多功能蛋白质组基因组学工具FusionPro

    期刊:Molecular & Cellular Proteomics 发表时间:June 17, 2019 DOI:10.1074/mcp.RA119.001456 分享人:任哲 内容与观点: ...

  5. 【豆科基因组】小豆(红豆)adzuki bean, Vigna angularis基因组2015

    目录 一.来源 研究一:Draft genome sequence of adzuki bean, Vigna angularis 研究二:Genome sequencing of adzuki be ...

  6. DNA甲基化测序方法介绍

    DNA甲基化测序方法介绍 甲基化 表观遗传学 DNA 甲基化是表观遗传学(Epigenetics)的重要组成部分,在维持正常细胞功能.遗传印记.胚胎发育以及人类肿瘤发生中起着重要作用,是目前新的研究热 ...

  7. Nat Comm | 中科院动物所张勇团队合作揭示动物中DNA转座子介导基因重复的机制

    1950年Barbara Mclintock 首次在玉米中发现转座子(TEs),并由此获得诺贝尔奖.尽管长期被认为是垃圾DNA,但现在TEs被广泛认可是宿主基因组演化的重要推动力.它们可引起包含基因重 ...

  8. Database in BioInformation

    很多数据库都可以通过下面的网站下载:http://annovar.openbioinformatics.org/en/latest/user-guide/download/ 一.NHLBI-ESP(E ...

  9. 突变注释工具SnpEff,Annovar,VEP,oncotator比较分析--转载

    https://www.jianshu.com/p/6284f57664b9 目前对于variant进行注释的软件主要有4个: Annovar, SnpEff, VEP(variant Effect ...

随机推荐

  1. RabbitMQ的一些理解和笔记

    在这篇博客中,简单记录一下 rabbitmq 服务器中一些基本的概念. Connection: connection 为 TCP连接,是我们的应用程序和RabbitMQ服务器真正发送和接收数据的地方. ...

  2. echart3 力引导布局实现节点的提示和折叠

    最近在项目中需要开发一个图表来显示人员的各种属性,类似于一种树形的结构进行显示数据.如果多个人员有同一个属性,那么需要将相同的属性进行连线,即关联起来.即形成一个关系图,由于我自身对echarts稍微 ...

  3. RocketMQ源码详解 | Producer篇 · 其二:消息组成、发送链路

    概述 在上一节 RocketMQ源码详解 | Producer篇 · 其一:Start,然后 Send 一条消息 中,我们了解了 Producer 在发送消息的流程.这次我们再来具体下看消息的构成与其 ...

  4. 攻防世界 杂项 9.a_good_idea

    题目描述: 汤姆有个好主意 解题思路: 首先按照隐写思路找了一下没找到flag,接着使用winhex打开图片,发现图片里面又包含了一张图片,然后马上改了一下后缀为zip, 解压后发现里面有:hint. ...

  5. Django(71)图片处理器django-imagekit

    介绍 ImageKit是用于处理图像的Django应用程序.如果需要从原图上生成一个长宽为50x50的图像,则需要ImageKit. ImageKit附带了一系列图像处理器,用于调整大小和裁剪等常见任 ...

  6. Xpath运算符

    5.position定位 >>print tree.xpath('//*[@id="testid"]/ol/li[position()=2]/text()')[0] & ...

  7. .Net(c#)汉字和Unicode编码互相转换实例

    {"name": "\u676d\u5dde", "href": "www.baidu.com"} 经常遇到这样内容的j ...

  8. JAVA笔记4__static关键字/对象数组/foreach/方法的可变参数

    /** * static关键字:修饰属性(实质就是全局变量).方法(无需本类的对象即可调用此方法).类. * 1.static方法只能调用static方法 * 2.static方法只能访问static ...

  9. Python学习笔记总结

    目录 Python学习笔记总结 前言 安装 数据类型 Hello,World 变量 字符串 首字母大写 全部小写 全部大写 Tab和换行符 格式化 去除空格 List列表 列表增删改查排序 遍历列表 ...

  10. 区块链开发学习第三章:私有链上部署helloBlockchain简单合约

    前面讲了部署私有链以及新增账户,现在进行到了部署合约了,此操作真是踩了无数无数无数的坑,到写文章为止确实是已经部署好了,但是还有些坑是还没有解决的! 一.Solidity编译器 开始的时候用的http ...