Mercurial > repos > cmonjeau > kissplice
diff kisspliceGWrapper.py @ 0:131c36a303ee
Imported from capsule None
author | cmonjeau |
---|---|
date | Fri, 05 Jun 2015 11:40:36 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kisspliceGWrapper.py Fri Jun 05 11:40:36 2015 -0400 @@ -0,0 +1,75 @@ +import subprocess, os, sys, shutil, tempfile, os.path +from os.path import basename, splitext + +## inputs +kmer_value = sys.argv[7] +smallc_value = sys.argv[8] +bigc_value = sys.argv[9] +output_contex_value = sys.argv[10] +counts_value = sys.argv[11] +input_dat = sys.argv[12:len(sys.argv):2] # contains filename1... filenameq +input_ext = sys.argv[13:len(sys.argv):2] # contains extension1... extensionq + +## tmp directory +tmp_dir = tempfile.mkdtemp(prefix='kissplice-galaxy.') + +## command line (init) +command_line = [] +command_line.append("kissplice") + +## symlink for .fasta/q (extension required) +## command line built with -r option +identifier = "" +for i in range(0,len(input_dat)): + tmp_input_fasta = os.path.join(tmp_dir, 'input'+str(i)+'.'+input_ext[i]) + identifier += 'input'+str(i)+'_' + os.symlink(input_dat[i], tmp_input_fasta) + command_line.append("-r") + command_line.append(tmp_input_fasta) + +## command line (end) +opath=tmp_dir+"/results" +nocontext = "" +nosnp = "" +if output_contex_value == "yes": + command_line.extend(["-k", kmer_value, + "-c", smallc_value, "-C", bigc_value, + "--counts", counts_value, "--output-context", + "-o", opath, "-s"]) +else: + command_line.extend(["-k", kmer_value, + "-c", smallc_value, "-C", bigc_value, + "--counts", counts_value, + "-o", opath, "-s"]) + +## running kissplice +p=subprocess.Popen(command_line, + stdout=subprocess.PIPE,stderr=subprocess.PIPE) +stdoutput = p.communicate() + +## outputs +output_f1=sys.argv[1] +out1=open(output_f1, 'w' ) +out1.write(stdoutput[0]) +out1.close() + +output_type0=sys.argv[2] +output_type1=sys.argv[3] +output_type2=sys.argv[4] +output_type3=sys.argv[5] +output_type4=sys.argv[6] + +result_type0 = opath+"/"+"results_"+identifier+"k"+kmer_value+"_coherents_type_0.fa" +result_type1 = opath+"/"+"results_"+identifier+"k"+kmer_value+"_coherents_type_1.fa" +result_type2 = opath+"/"+"results_"+identifier+"k"+kmer_value+"_coherents_type_2.fa" +result_type3 = opath+"/"+"results_"+identifier+"k"+kmer_value+"_coherents_type_3.fa" +result_type4 = opath+"/"+"results_"+identifier+"k"+kmer_value+"_coherents_type_4.fa" + +shutil.move(result_type0, output_type0) +shutil.move(result_type1, output_type1) +shutil.move(result_type2, output_type2) +shutil.move(result_type3, output_type3) +shutil.move(result_type4, output_type4) + +## cleaning +shutil.rmtree(tmp_dir)