目前大部分的教程在质控上都是推荐的FastQC,然而它有一个不足,就是虽然名字上有一个Fast,但是它还不够Fast,真正的快,还得是Falco。
如何安装?非常简单,只需要一个conda
conda install -c bioconda falco
因为falco是C++编写的,因此我们只需要安装编译的二进制文件,只占用186 Kb.而如果你要安装FastQC,你还需要装上JRE才行,那就太大了。
在使用上,falco基本上就是可以做到无缝切换,也就是你完全可以alias fastqc=falco
, 让fastqc成为falco的别名,而不会有任何影响。
接着,在运行时间上,我测试了一个我最近用到的一个数据集,SRP424639,
time falco SRP424639_1.fastq SRP424639_2.fastq
# falco SRP424639_1.fastq SRP424639_2.fastq 545.70s user 24.42s system 99% cpu 9:32.49 total
time fastqc SRP424639_1.fastq SRP424639_2.fastq
# fastqc SRP424639_1.fastq SRP424639_2.fastq 1480.22s user 34.46s system 99% cpu 25:15.45 total
falco总用时是9分30.而fastqc用时25分钟,快了约2.7倍!
最后是输出部分,fastqc会输出一个zip文件和一个html文件,而falco有所不同,他会为每个样本输出3个文件,分别是 文件名_fastqc_data.txt
, 文件名_fastqc_report.html
, 文件名_summary.txt
, 其中html文件内容和fastqc一样。而fastqc_data.txt文件需要做一点小小的修改,才能用于后续分析。
# 为每个样本建立一个文件夹, 因为multiqc 只能识别文件名为 fastqc_data.txt
ls *fastqc_data.txt | while read id ; do sample=${id%%.*}; mkdir $sample && mv $id $sample/fastqc_data.txt ; done
# 运行multiqc
multiqc SRP424639_1 SRP424639_2
当然falco也有一个不足,那就是他缺少一个图形界面,可能对哪些喜欢图形界面的人不够友好。不过我用的终端,后续习惯用multiqc对多个结果进行汇总,因此这其实不算问题。
小结一下:Falco不是FastQC的平替,而是直接代替!
如何引用
de Sena Brandine G and Smith AD. Falco: high-speed FastQC emulation for quality control of sequencing data. F1000Research 2021, 8:1874 (https://doi.org/10.12688/f1000research.21142.2)