知名的拷贝数变异分析工具几乎都是为人类变异检测开发,对于动植物重测序分析有些尴尬。不过好在植物群体研究不必那么精细,用同样的工具也可做分析。

地址:https://github.com/abyzovlab/CNVnator

1.安装

建议直接用conda。

conda create -n cnv cnvnator
conda activate cnv

查看帮助:

$ cnvnator
Not enough parameters. CNVnator v0.4.1 Usage:
cnvnator -root out.root [-genome name] [-chrom 1 2 ...] -tree file1.bam ... [-lite]
cnvnator -root out.root [-genome name] [-chrom 1 2 ...] -merge file1.root ...
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -vcf [file.vcf.gz | file.vcf] [-rmchr] [-addchr]
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -idvar [file.vcf.gz | file.vcf] [-rmchr] [-addchr]
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -mask strict.mask.file.fa.gz [-rmchr] [-addchr]
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] [-d dir | -fasta file.fa.gz] -his bin_size
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -baf bin_size [-hap] [-useid] [-nomask]
cnvnator -root file.root [-chrom 1 2 ...] -stat bin_size
cnvnator -root file.root -eval bin_size
cnvnator -root file.root [-chrom 1 2 ...] -partition bin_size [-ngc]
cnvnator -root file.root [-chrom 1 2 ...] -call bin_size [-ngc]
cnvnator -root file.root -genotype bin_size [-ngc]
cnvnator -root file.root -view bin_size [-ngc]
cnvnator -pe file1.bam ... -qual val(20) -over val(0.8) [-f file]
cnvnator-root file.root [-chrom 1 2 ...] -cptrees newfile.root
cnvnator-root file.root -ls Valid genomes (-genome option) are: NCBI36, hg18, GRCh37, hg19, mm9, hg38, GRCh38

2.测试

首先准备好数据,再利用一个小数据集,比如这里用一条染色体来测试一下流程。

准备基因组数据。需要将基因组按染色体/scaffold拆分成单条序列,放在一个目录下。

mkdir genome;cd genome
faSplit byname genome.fa genome
# faSplit可用conda安装,或者自己写脚本拆分

测试脚本,先用一条染色体试试:

#从bam文件中提取比对上的reads信息
cnvnator -root file.root -tree sample-1.rmdup.bam -chrom 1
#生成read depth分布图
cnvnator -root file.root -his 1000 -d genome/ -chrom 1
#计算统计结果
cnvnator -root file.root -stat 1000 -chrom 1
#RD信号分割
cnvnator -root file.root -partition 1000 -chrom 1
#拷贝数变异检测
cnvnator -root file.root -call 1000 -chrom 1 > cnv.call.txt
#转化为vcf,如果是conda安装,没有这个脚本,需要从GitHub上下载
/biosoft/CNVnator/cnvnator2VCF.pl cnv.call.txt genome >test.vcf

拷贝数cnv.all.txt结果:、

表头CNV_type coordinates CNV_size normalized_RD e-val1 e-val2 e-val3 e-val4 q0

  • CNV_type有deletion和duplication两种类型;
  • CNV_size 位于染色体区域;
  • normalized_RD 矫正后的read depth;
  • e-val1 t检验后的evalue值,通常该值越小,代表分析的结果越准确;
  • q0 比对的质量值为0的reads占比,通常该值越大,代表分析的结果越不准确。

vcf结果:

没有自动加上样品名,需要自己修改。加上--prefix参数也只是改变CNV ID。

更多结果解读,请查看官方文档或网上其他教程。

3.动植物群体检测CNV

正式分析。

ls -l /project/gvcf/*.rmdup.bam |awk -F' ' '{print $8}' >sample.info
cat sample.info |while read id;do
sample=`basename $id |sed 's/.rmdup.bam//'`
echo $sample
cnvnator -root file.root -tree $id
cnvnator -root file.root -his 1000 -d genome/
cnvnator -root file.root -stat 1000
cnvnator -root file.root -partition 1000
cnvnator -root file.root -call 1000 > cnv.call.txt
/biosoft/CNVnator/cnvnator2VCF.pl cnv.call.txt genome >${sample}.cnv.vcf
sed -i "22s/cnv/${sample}/" ${sample}.cnv.vcf
bgzip ${sample}.cnv.vcf
tabix -p vcf ${sample}.cnv.vcf.gz
done

得到各个样本的拷贝数vcf文件,将它们合并成一个。

vcf-merge sample-1.cnv.vcf.gz sample-2.cnv.vcf.gz  ...>merge.vcf

或对不同类型群体进行合并。

https://blog.csdn.net/yangl7/article/details/114656482

https://www.jianshu.com/p/98542359df20

https://blog.csdn.net/weixin_43569478/article/details/108079613

使用CNVnator分析动植物群体拷贝数变异CNV的更多相关文章

  1. DNA拷贝数变异CNV检测——基础概念篇

    DNA拷贝数变异CNV检测——基础概念篇   一.CNV 简介 拷贝数异常(copy number variations, CNVs)是属于基因组结构变异(structural variation), ...

  2. 全基因组测序 从头测序(de novo sequencing) 重测序(re-sequencing)

    全基因组测序 全基因组测序分为从头测序(de novo sequencing)和重测序(re-sequencing). 从头测序(de novo)不需要任何参考基因组信息即可对某个物种的基因组进行测序 ...

  3. 全基因组测序 Whole Genome Sequencing

    全基因组测序 Whole Genome Sequencing 全基因组测序(Whole Genome Sequencing,WGS)是利用高通量测序平台对一种生物的基因组中的全部基因进行测序,测定其 ...

  4. GWAS | 全基因组关联分析 | Linkage disequilibrium (LD)连锁不平衡 | 曼哈顿图 Manhattan_plot | QQ_plot | haplotype phasing

    现在GWAS已经属于比较古老的技术了,主要是碰到严重的瓶颈了,单纯的snp与表现的关联已经不够,需要具体的生物学解释,这些snp是如何具体导致疾病的发生的. 而且,大多数病找到的都不是个别显著的snp ...

  5. CNV

    CNV: 人类主要是二倍体.如果有些区域出现3个.4个拷贝,那就是扩增了,如果只出现1个拷贝,就是缺失.所以CNV分析是依靠特定位置的测序深度来估算的,先在染色体上划窗,然后看每个窗口的平均测序深度, ...

  6. GATK--数据预处理,质控,检测变异

    版权声明:本文源自 解螺旋的矿工, 由 XP 整理发表,共 13781 字. 转载请注明:从零开始完整学习全基因组测序(WGS)数据分析:第4节 构建WGS主流程 | Public Library o ...

  7. SNP/单核苷酸多态性分析

    SNP/单核苷酸多态性分析 SNP(Single Nucleotide Polymorphism),即单核苷酸多态性,是由于单个核苷酸改变而导致的核酸序列多态.一般来说,一个SNP位点只有两种等位基因 ...

  8. 对CCLE数据库可以做的分析--转载

    转载:http://www.bio-info-trainee.com/1327.html 收集了那么多的癌症细胞系的表达数据,拷贝数变异数据,突变数据,总不能放着让它发霉吧! 这些数据可以利用的地方非 ...

  9. Data Mining的十种分析方法——摘自《市场研究网络版》谢邦昌教授

    Data Mining的十种分析方法: 记忆基础推理法(Memory-Based Reasoning:MBR)        记忆基础推理法最主要的概念是用已知的案例(case)来预测未来案例的一些属 ...

随机推荐

  1. Spring 5 MVC 中的 Router Function 使用

    Spring 5 发行已经好几年了,里面提出了好几个新点子.其中一个就是 RouterFunction,这是个什么东西呢? Spring框架给我们提供了两种http端点暴露方式来隐藏servlet原理 ...

  2. UltraSoft - Alpha - 发布声明

    DDL_Killer Alpha版本发布声明 1. Alpha 阶段功能描述与版本实现 功能描述 设计原型 Alpha实现 登陆界面 注册界面 首页 日历视图 事项详情页 新建事项 列表视图 课程视图 ...

  3. 热身训练1 Game

    http://acm.hdu.edu.cn/showproblem.php?pid=5242 简要题意: 一棵树有n个节点,每个节点x有一个权值wi,我们要从根节点出发(不可回头),去收集每个节点的权 ...

  4. 零基础学习STM32之入门学习路线

    可以说就目前的市场需求来看,stm32在单片机领域已经拥有了绝对的地位,51什么的已经过时了也只能拿来打基础了,最后依然会转到stm32来,也正是因为这样stm32的学习者越来越多,其中不难发现绝大部 ...

  5. HITS算法简介

    1.算法名称 超文本敏感标题搜索 (Hyperlink-Induced Topic Search) 2.算法背景 HITS 算法是由康奈尔大学的Jon Kleinberg 博士于1997 年首先提出的 ...

  6. Unity——射线系统

    Unity射线系统 Demo展示 UI+Physical射线测试: FPS自定义射线测试: UGUI射线工具 实现功能,鼠标点击UI,返回鼠标点击的UI对象: 需要使用到鼠标点击事件-PointerE ...

  7. Linux Ubuntu stty 使用

    stty(set tty)命令用于显示和修改当前注册的终端的属性. 该命令是一个用来改变并打印终端行设置的常用命令. stty -a #将所有选项设置的当前状态写到标准输出中 old_stty_set ...

  8. systemd-nspawn以及container的学习

    container的分类 目前container可以分为两大类,一类是Privileged container,一类是Unprivileged container. Privileged contai ...

  9. MySQL新建用户并赋予权限:解决命令行与Navicat展示数据库不一致问题

    1.创建新用户 'xiaoxiao'密码'123456' mysql> CREATE USER 'xiaoxiao'@'localhost' IDENTIFIED BY '123456'; 2. ...

  10. EF Core 小技巧:迁移已经应用到数据库,如何进行迁移回退操作?

    场景描述:项目中存在两个迁移 Teacher 和 TeachingPlan ,TeachingPlan 在 Teacher 之后创建,并且已经执行 dotnet ef database update ...