【直播】我的基因组61:scalpel软件找indel

那么现在正式的开始第61讲

其实这次的call variation的软件,不仅仅是找到SNV,也顺便找到了indel,只是可能不太准确。一般业界的公认标准是 GATK的best practice,不过那个我已经做了,现在来一点新的,我正好看到了这个scalpel软件。

当然,为什么使用它,完全是随心所欲,也可以选择Pindel等其它软件。我在这里只是为了秀一个软件的用法,生信工程师该如何持续学习。

Scalpel is available here: http://scalpel.sourceforge.net/

文章:

http://www.nature.com/nmeth/journal/v11/n10/full/nmeth.3069.html

软件说明书写的也比较详细:http://scalpel.sourceforge.net/manual.html

他提供了3种情况的找INDELs变异,我目前需要的就是对我的全基因组测序数据来找,所以用single模式。

为了节省对计算资源的消耗,作者建议我单独对每条染色体分别处理。

软件安装是:

## Download and install Scalpel
cd ~/biosoft
mkdir Scalpel && cd Scalpel
wget [url]https://downloads.sourceforge.net/project/scalpel/scalpel-0.5.3.tar.gz[/url]
tar zxvf scalpel-0.5.3.tar.gz
cd scalpel-0.5.3
make
~/biosoft/Scalpel/scalpel-0.5.3/scalpel-discovery --help
~/biosoft/Scalpel/scalpel-0.5.3/scalpel-export --help

它需要自己指定--bed参数来选择染色体运行,而且不是给一个chr1就可以了,需要指定染色体及其起始终止坐标:single region in format chr:start-end (example: 1:31656613-31656883),所以就比较考验shell编程技巧啦!

制作 ~/reference/genome/hg19/hg19.chr.bed 这个文件,我就不多说了,前面我们已经讲过了!

chr10 1 135534747
chr11 1 135006516
chr12 1 133851895
chr13 1 115169878
chr14 1 107349540
chr15 1 102531392
chr16 1 90354753
chr17 1 81195210
chr18 1 78077248
chr19 1 59128983
chr1 1 249250621
chr20 1 63025520
chr21 1 48129895
chr22 1 51304566
chr2 1 243199373
chr3 1 198022430
chr4 1 191154276
chr5 1 180915260
chr6 1 171115067
chr7 1 159138663
chr8 1 146364022
chr9 1 141213431

区分染色体分别运行scalpel软件代码如下:

cat ~/reference/genome/hg19/hg19.chr.bed |while read id
do
arr=($id)
# arr=($a) will split the $a to $arr , ${arr[0]} ${arr[1]} ~~~, but ${arr[@]} is the whole array .
# OLD_IFS="$IFS"
# IFS=","
# arr=($a)
# IFS="$OLD_IFS"
#arr=($a)用于将字符串$a分割到数组$arr ${arr[0]} ${arr[1]} ... 分别存储分割后的数组第1 2 ... 项 ,${arr[@]}存储整个数组。
#变量$IFS存储着分隔符,这里我们将其设为逗号 "," OLD_IFS用于备份默认的分隔符,使用完后将之恢复默认。
echo ${arr[0]}:${arr[1]}-${arr[2]}
date
start=`date +%s`
~/biosoft/Scalpel/scalpel-0.5.3/scalpel-discovery --single \
--bam ~/data/project/myGenome/fastq/bamFiles/jmzeng.filter.rmdup.bam \
--ref ~/reference/genome/hg19/hg19.fa \
--bed ${arr[0]}:${arr[1]}-${arr[2]} \
--window 600 --numprocs 5 --dir ${arr[0]}
end=`date +%s`
runtime=$((end-start))
echo "Runtime for ${arr[0]}:${arr[1]}-${arr[2]} was $runtime"
done

最后得到的是每一条染色体一个vcf文件记录着INDEL情况,暂时我还没进行下一步处理。

这里我其实主要是想讲如何用shell进行并行,查看原文可以看到我们的题目及视频讲解,关于这个软件的并行使用!

顺便预告一下,我在wegene测得的芯片数据已经完成了全流程,下载是wegene专题。

还有,我们生信菜鸟团热心群友指出了我前面用常染色体做祖源分析的不足之处,希望我可以继续用Y染色体和线粒体DNA来做下去,给了我几个网址,我估计要学习两个月左右才能完全搞明白,毕竟是孤家寡人兼职学习,有点累,有兴趣的可以学习下面的内容,跟我交流,我的email是jmzeng1314@163.com

https://isogg.org/tree/index.html

https://www.yfull.com/tree/

http://www.ybrowse.org/gbrowse2/gff/

http://www.phylotree.org/tree/index.htm

https://dna.jameslick.com/mthap/

文:Jimmy

图文编辑:吃瓜群众

原文发布于微信公众号 - 生信技能树(biotrainee)

原文发表时间:2017-03-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏LeoXu的博客

Tapestry 教程(一) 原

这篇教程帮助人们来创建基于 Tapestry 的 web 应用程序。你是否有过使用 Tapestry 早期版本或者其它 web 框架的经历,这一点并不重要。事实...

633
来自专栏用户2442861的专栏

使用ffmpeg转换文件格式,及ffmpeg参数说明(转)

转换文件test.avi到test.flv ffmpeg -i test.avi -ab 56 -ar 22050 -b 500 -r 29.97 -s 3...

421
来自专栏点滴积累

geotrellis使用(七)记录一次惨痛的bug调试经历以及求DEM坡度实践

     眼看就要端午节了,屌丝还在写代码,话说过节也不给轻松,折腾了一天终于解决了一个BUG,并完成了老板安排的求DEM坡度的任务,那么就分两段来表。 一、B...

2975
来自专栏QQ会员技术团队的专栏

Vue.js前后端同构方案之准备篇—代码优化

作者简介:王鹤,高级前端工程师,隶属于腾讯SNG增值产品部。主要负责QQ个性化业务的功能开发及技术优化。业务时间喜欢折腾设计、产品,新技术、理财等。品牌「爱财记...

1948
来自专栏北京马哥教育

我用Python爬了7W知乎用户信息,终于捕获了心仪小姐姐......

作为一个 Python 程序员,要如何找到小姐姐,避开暴击伤害,在智中取胜呢?于是就有了以下的对话: ? ? ? so~今天我们的目标是,爬社区的小姐姐~而且...

3779
来自专栏生信宝典

一文教会你查找基因的启动子、UTR、TSS等区域以及预测转录因子结合位点

本文授权转载自科研小助手(ID:SciRes)斜体小一号字体为生信宝典的备注或校正。

1321
来自专栏王大锤

唐巧的iOS技术博客选摘

3336
来自专栏贤羽的前端小栈

探索 PHP 与 Vue 通用直出模板方案

我们通常说的“页面直出”,其实就是服务端渲染(SSR, Server-Side Render)。最初的 JS SPA 方案有个常见的问题,就是脚本没有加载执行完...

2.2K2
来自专栏更流畅、简洁的软件开发方式

发布一个锁定行列的一种方法。(实现Excel里的冻结窗格的功能)

功能介绍:     可以实现锁定表格的行和列的功能,效果和Excel里的冻结窗格类似,当然没有Excel那么强大了,只是类似。 问题:     当一个t...

2466
来自专栏生信技能树

不编程就能完成差异表达分析

上几周,生信技能树的元老级人物果子发了一篇重量级文章数据库一网打尽:不会编程又怎样,还不照样拿课题发文章! 阅读量逼近4000,还超过了Jimmy的署名文一个全...

34711

扫描关注云+社区