前文讲述了从样本信息录入,分析流程的搭建/设计和运行,最终模板报告的定制与自动生成。为了实现完整的自动化,本文讲述如何与Illumina测序仪衔接,实现下机数据自动拆分(测试过的机型MiSeq,NextSeq500)。
说到Illumina的下机数据拆分,就一定会用到Illumina官方的软件bcl2fastq2,目前最新版本2.20软件可以从Illumina官网下载,默认提供的是Linux rpm格式或者是源码格式。
rpm -install -y bcl2fastq2_0v2.20.0.422-2_amd64.rpm
sudo apt-get install alien
sudo alien bcl2fastq2_0v2.20.0.422-2_amd64.rpm
dpkg -i bcl2fastq2_0v2.20.0.422-2_amd64.deb
-源码安装:
## For example, you can set the environment variables as:
export TMP=/tmp
export SOURCE=${TMP}/bcl2fastq
export BUILD=${TMP}/bcl2fastq2-v2.19.x-build
export INSTALL_DIR=/usr/local/bcl2fastq2-v2.19.x
##Build and Installthe Software
${TMP}/bcl2fastq:
cd ${TMP}
tar -xvzf bcl2fastq2-v2.19.x.tar.gz
mkdir ${BUILD}
cd ${BUILD}
chmod ugo+x ${SOURCE}/src/configure
chmod ugo+x ${SOURCE}/src/cmake/bootstrap/installCmake.sh
${SOURCE}/src/configure --prefix=${INSTALL_DIR}
cd ${BUILD}
make
make install
用<runfolder>
表示下机目录,默认用于标记样本的SampleSheet.csv文件位置<runfolder>/SampleSheet.csv
运行:
nohub nohup /usr/local/bin/bcl2fastq \
--runfolder-dir <RunFolder>
--output-dir <BaseCalls>
--sample-sheet <runfolder-dir>/SampleSheet.csv
或者指定SampleSheet.csv文件位置:
nohub nohup /usr/local/bin/bcl2fastq \
--runfolder-dir <RunFolder>
--output-dir <BaseCalls>
实际运行命令举例:
bcl2fastq -r 8 -p 8 -w 8 \
--no-lane-splitting \
--barcode-mismatches 1 \
--runfolder-dir /opt/ref/data/181105_NB551525_0003_AH7W7TAFXY \
--sample-sheet /opt/ref/data/181105_NB551525_0003_AH7W7TAFXY/SampleSheet.csv \
--output-dir /opt/ref/data
bcl2fastq命令参数很多,但是最常用的参数就以下几个:
Illumina测序仪下机数据文件夹命名: YYMMDD_machinename_XXXX_FCXXXX
如果要使用程序扫描匹配样本系统,就需要提供至少前两个字段作为识别匹配。后两个字段,获取较难。
如何判断测序结束?一般使用该目录下RTAComplete.txt是否存在来判断测序是否完成。
SampleSheet文件最常用的有版本4 / 5,字段有些差异,但是真正在数据拆分时候起作用的,上图红色部分,其余并不重要。这里为了拆分项目通用性使用了字段 SampleProject,实际使用种大概率会出现多个项目上一张芯片。
以上SampleSheet.csv文件放在下机数据目录里,数据分拆后得到的数据是这样的:
目录结构为:
[Sample Project]/[Sample ID]/[Sample Name]S*_R1_*.fastq.gz
记住此目录结构,为了拆分数据得到的数据与后续生信pipeline连接做全自动分析。
如果要用程序生成SampleSheet文件,这里就会用到图形化开放式生信分析系统开发 - 2 样本信息处理文章里样本信息的字段信息。
需要完成的工作:
整体的运行逻辑流程图如下:
单纯的体力劳动。上两张图
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。