How to perform SOAPdenovo for many samples
1
0
Entering edit mode
5.5 years ago

Dear Friends,

I need a help. I have 30 paired end reads of 30 samples and I need to assemble it in a single go using SOAPdenovo with a single command. I have already done it one by one but I need a command to perform all the 30 read files at once.

Thank you Michael

Assembly • 1.8k views
ADD COMMENT
0
Entering edit mode
ADD REPLY
0
Entering edit mode

Tried anything like looping, GNU parallel or the like?

ADD REPLY
0
Entering edit mode

Do you want a single assembly using all 30 samples as input? Or do you want 30 assemblies, but all running in parallel?

ADD REPLY
0
Entering edit mode

try to follow soapdenovo2 manual here: https://hcc-docs.unl.edu/display/HCCDOC/SOAPdenovo2. For paired end, you can create one single config file and submit it to cluster. Example script is furnished in the manual.

ADD REPLY
0
Entering edit mode
5.5 years ago
#!/bin/bash

for i in `ls *.fastq`
        do
        soapdenovo2 <parameters> $i    &
done

You'll need to set up the config files for each separately though but try that. Otherwise try something like Abyss which doesn't need a config file.

ADD COMMENT
1
Entering edit mode

ls *.fastq is not a good idea, it's better to use shell globs directly (for i in *.fastq). Also, why do a loop when you can:

ls *.fastq | parallel -I fastq_file soapdenovo2 <parameters> fastq_file
ADD REPLY
0
Entering edit mode

I’m not too familiar with SOAP, so I might be wrong, but as these are paired end reads, presumably there will need to be a step to pair up the R1 and R2 files before passing them to whatever syntax SOAP expects - i.e. before your loop.

ADD REPLY

Login before adding your answer.

Traffic: 3383 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6