实验一 基因组组装

实验一 基因组组装

一、实验目的

  1. 熟悉基因组从头组装原理及步骤
  2. 掌握velvet, minia, SPAdes等短序列拼装软件使用
  3. 熟悉用quast评价组装效果

二、基因组组装组装原理与方法

两种策略

  1. Overlap/layout/consensus
  2. De Bruijn k-mer graphs

第一种策略主要应用在长reads组装上,如sanger测序数据和第三代测序数据,组装软件包括phrap, cap3等。 第二种策略主要应用于短reads数据组装上,包括velvet, soapdenovo, ABYSS等。

Overlap/layout/consensus基本步骤

  1. Calculate all overlaps. 计算重叠片断
  2. Cluster based on overlap. 重叠片断聚类
  3. Do a multiple sequence alignment. 多序列比对,取一致序列

De Bruijin k-mer graphs基本步骤

  1. Building the k-mer graph,构建k-mer图,有的软件会在之前加一步,对reads进行纠错
  2. Construct contigs,搜索路径
  3. Scaffolding and fill gaps,构建scaffold并填洞

本实验主要介绍使用第二种策略的组装软件velvet, minia和SPAdes的使用

如何选择合适k

  1. 多试几个k,看组装效果
  2. 利用如KmerGenie进行辅助选择

如何选择组装软件

  1. 选择你熟悉的软件
  2. 选择大家使用多的软件
  3. 选择适合项目性质的软件,如基因组大小,染色体倍性,杂合度,数据类型,宏基因组,转录组等

浏览软件库

三、上机操作

设置环境变量和工作目录

module add bioinfo
#新建一个目录lab1,本实验所有数据和输出都放入该目录中  
mkdir lab1
cd lab1
mkdir data
mkdir result

软件下载与编译(选做)

组装软件:velvetminiaSPAdes
评价软件:quast

# 说明:本实验所需软件已经下载到/bs1/data/genomeLab/lab1/soft/,可以直接将这些软件连接到soft目录下使用
# 安装velvet
git clone https://github.com/manogenome/velvet.git
cd velvet
make MAXKMERLENGTH=90 # 默认K最大为31

# 安装minia
cd ../
wget -c https://github.com/GATB/minia/releases/download/v2.0.7/minia-v2.0.7-Source.tar.gz
tar zxvf minia-v2.0.7-Source.tar.gz
cd minia-v2.0.7-Source
mkdir build
cd build
cmake ..
make -j8

# 安装SPAdes
cd ../../
 wget -c http://spades.bioinf.spbau.ru/release3.9.0/SPAdes-3.9.0-Linux.tar.gz
 tar zxvf SPAdes-3.9.0-Linux.tar.gz

# 安装quast
cd ../
curl -O -L https://downloads.sourceforge.net/project/quast/quast-2.3.tar.gz
tar xzf quast-2.3.tar.gz

# 安装kmergenie
wget -c http://kmergenie.bx.psu.edu/kmergenie-1.7016.tar.gz
tar zxvf kmergenie-1.7016.tar.gz
cd kmergenie-1.7016
make

准备数据

数据存放在服务器位置:
/bs1/data/genomeLab/lab1/data/reads_1.fq.gz
/bs1/data/genomeLab/lab1/data/reads_2.fq.gz
#参考基因组
/bs1/data/genomeLab/lab1/data/ref.fa

组装

# 准备数据
cd data
ln -s /bs1/data/genomeLab/lab1/data/reads_1.fq.gz /bs1/data/genomeLab/lab1/data/reads_2.fq.gz ./

cd ../result
[path to]/velveth ecoli.velvet 21 -shortPaired -fastq.gz -separate ../data/reads_1.fq.gz ../data/reads_2.fq.gz
[path to]/velvetg ecoli.velvet -exp_cov auto
# 注:[path to]为程序所在的路径,以下类似

[path to]/minia -in ../data/reads_1.fq.gz,../data/reads_2.fq.gz -kmer-size 21 -out ecoli.minia

[path to]/spades.py -t 4 -1 ../data/reads_1.fq.gz -2 ../data/reads_2.fq.gz -o ecoli.spades

#组装效果评价
[path to]/quast.py -R /bs1/data/genomeLab/lab1/data/ref.fa \
   ecoli.velvet/contigs.fa \
   ecoli.minia.contigs.fa \
   ecoli.spades/scaffolds.fasta

#查看评价结果
less quast_results/latest/report.txt 

四、作业

  1. 不同k-mer值对组装的影响,对velvet和minia用31和51进行组装,比较组装效果
  2. 熟悉和理解基因组组装一些术语名词,如N50, NG50, contig, scaffold, gap等
  3. 理解k-mer频次分布图,如何根据k-mer频次分布图估算基因组大小及杂合度

五、参考文献

  • 7
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wangchuang2017

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值