关于illumina产⽣的测序源⽂件bcl转换成fastq格式的
问题
由于连接测序仪的服务器不知道哪⾥抽了风,⽆法直接的⽣成fastq格式的⽂件,好久都⽆解,经过⼀段时间仍⽆法解决,所以采⽤曲线救国的⽅法,看能不能利⽤三⽅软件将bcl转换成fastq⽂件
google以后发现illumina的OLB(off-line Basecaller)软件可以实现从bcl格式转换成qseq格式,⽽qseq格式就可以通过简单的perl 或者shell或者java脚本转换成fastq格式。还有⼀种策略是利⽤picard的IlluminaBcl2sam转换成sam格式,然后再从sam转换成fastq格式(虽然没有采⽤这种⽅法,但是隐隐的感觉该⽅法可能转换出来的数据不理想,⽽且中间⽣成的sam⽂件也⽐较⼤⽐较占空间,加上感觉参数指定的时候很多⽂件例如positionfile ,filterfile都没⽤上)。本⼈对bcl格式知道的不多,测序⽣成的rawdata原始⽂件夹有个Intensitive ⽽该⽂件夹⼜含有basecall⽂件夹和很多的positionfile,虽然不知道position file是⼲嘛的,但是后⾯采⽤OLB软件转换的时候会⽤到这些⽂件,basecalling⽂件夹下⼜含有不同lane的信息例如L001等,打开每个lane⽂件夹进去看,发现很多C打头的⽂件夹,这些⽂件夹根据我的理解就是变合成边测序产⽣circle⽂件,每个circle代表⼀个碱基。点开进去就是我们需要转换的bcl⽂件了。
简单说⼀下 ,这个安装时很⿇烦的,幸亏我们服务器安装了绝⼤多数的包,但是仍有⼏个包没有安装,perl是用来干嘛的
这么多的包得安装你没有管理员权限是很难完成的,这⾥稍作总结⼀下:
这是manual⽂件中涉及的需要安装的包,看⼀下 是不是需要很多,其中perl,python⾃然是最基础的,记住版本⼀定要⼤于所要求的,GNU编译器也是需要的,c++编译器也是需要安装。gnuplot是之前⾃⼰装,隐约觉得挺快就装好了,这些不懂的都可以去百度。其中⽐较⿇烦的是Ghostscript和ImageMaker ,Ghostscript是⽤来转换bitmap的⼯具,这⾥也要调⽤,fft包官⽅下载的OLB 安装包下⾃带,需要进⼊fft⽂件夹编译安装以后才能使⽤。
这些依赖的软件及软件包都安装完了以后就需要安装OLB了,⽅法也很简单,进⼊OLB⽂件夹,输⼊
make
make install
如果没有报错 就基本没问题了。下⾯使⽤OLB对⽂件进⾏转换,转换的qseq⽂件有两种⽅式⼀种是默认的bustard的⽅式 也是默认的⽅式,产⽣的⽂件中的未测到的碱基⽤“.” 表⽰,还有⼀种下游的GERALD⽣成的⽂件中为测到的碱基⽤N表⽰(通过--gerald参数),如果你采⽤第⼀种,之后也还要对数据中的“.”进⾏替换。
这⾥主要⽤这个软件转换数据格式,所以其他的功能也不做讨论,具体看如何转换:
⾸先进⼊你的数据所在⽬录的下的basecall的⽂件夹下⾯,然后输⼊
这⾥值得注意的是,后⾯的参数需要进⾏更改,在指定-b和-o(表⽰⽂件输⼊⽬录和输出⽬录-这个必须是新建的)的同时还要制定-f和-i -p,分别表⽰filter⽂件所在位置,intensive⽂件和position⽂件所在位置,不然就会报错。
这样就会在你的输出⽂件夹产⽣⼀个makefile。进⼊你的输出⽂件夹cd
输⼊
make -j 8 (表⽰线程数)
就会拿到你需要的qseq⽂件,这步会花费很长的时间,你需要保存log⽂件⽤于检查数据有没有问题,这⾥也要注意⽂件完整性,故在跑程序之前都要检查⽂件是否有问题,不然中途就会中断。
产⽣的后的qseq⽂件需要进⾏转换
其中perl的代码如下
#!/usr/bin/perl
use warnings;
use strict;
while (<>) {
chomp;
my @parts = split /\t/;
print "@","$parts[0]:$parts[2]:$parts[3]:$parts[4]:$parts[5]#$parts[6]/$parts[7]\n";
print "$parts[8]\n";
print "+\n";
print "$parts[9]\n";
}
保存以后 运⾏就可以⽣成⼀堆的fastq⽂件,这⾥还要对每个lane的⽂件进⾏合并,采⽤cat命令就可以实现
cat s_1_1_ | qseq2fastq.pl > s_1_1.fastq
这样就能得到我们数据分析需要⽤到的fastq⽂件的格式了。还有⼀点需要注意,这⾥产⽣的fastq⽂件中有很多质量差的数据,根原来服务器软件出来的不⼀样,这⾥就需要对产⽣的数据进⾏质量控制,也就是我们所说的QC了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。