+1 for MultiQC, I dont even bother to look at the individual output metrics anymore
I have received 384 fastq.gz files. These come from paired-end sequencing so I have 2 files per patient so 192 patients. I am new to NGS data analysis and I wish to start using FastQC. What would be the best way to proceed?
- I know FastQC can be run graphically but presumably, with that many samples, it would be best to use the command line..
I read some places that merging all samples into a single (or 2 with paired-end) files might be the solution. Is that recommended? Or should I just use simple bash scripting in like below (or something similar)?
for i in *fastqc.gz do bsub < fastqc_script_with_commands.sh done
I guess I'm just curious if there is a convention of merging fastq files or keeping them separate (1 or 2 per sample).
Thanks
2 answers
fastqc.sh:
#!/usr/bin/env bash
RUN_PATH=$1
cd $RUN_PATH
for file in $(ls $RUN_PATH)
do
SAMPLE=`basename $file`
fastqc -t 5 ${SAMPLE} -o /path/to/where/you/want/outputs
done
$./fastqc.sh /path/to/fastqs/
If you are running this on a cluster, just add qsub or bsub before the fastqs line (we have ibm):
That line would become:
bsub -P project -q queuename -n 1 -R "rusage[mem=2000]" fastqc -t 5 ${SAMPLE} -o /path/to/where/you/want/outputs
Change the queuename to the actual name of the queue you submit jobs to.
Log in to answer this question.
use gnu-parallel or snakemake.
or Nextflow. Examples of using FastQC inside a Nextflow pipeline here, here and here