comparison segcall.py @ 5:b7f3854e08f8

Adding all tools
author blanck
date Wed, 29 Apr 2015 09:55:41 +0200
parents
children
comparison
equal deleted inserted replaced
4:2b882515e1a3 5:b7f3854e08f8
1 import os
2 import sys
3 import subprocess
4 import zipfile
5
6
7 def main():
8
9 input_file=sys.argv[2]
10 tmp_dir=sys.argv[4]
11 settingsType=sys.argv[6]
12 zip_file=sys.argv[9]
13 tumorcsv=sys.argv[10]
14 cellularity=sys.argv[11]
15 outputlog=sys.argv[12]
16 log=sys.argv[13]
17 user=sys.argv[14]
18 method=sys.argv[15]
19 script_dir=os.path.dirname(os.path.abspath(__file__))
20
21 iFile=open(input_file,'r')
22 dataSetLine=iFile.readline()
23 dataset=dataSetLine.split("\t")[1]
24 iFile.close()
25
26
27 if settingsType=="dataset":
28 settingsType=dataset
29
30 if (outputlog=="TRUE"):
31 errfile=open(log,'w')
32 else:
33 errfile=open(os.path.join(tmp_dir,"errfile.log"),'w')
34
35 fig_dir=os.path.join("mpagenomics",user,"figures",dataset,"segmentation/CN")
36
37 abs_fig_dir=os.path.join(tmp_dir,fig_dir)
38 if (os.path.isdir(abs_fig_dir)) and (sys.argv[7]=="TRUE"):
39 old_files=os.listdir(abs_fig_dir)
40 for ifile in old_files:
41 os.remove(os.path.join(abs_fig_dir,ifile))
42
43
44 retcode=subprocess.call(["Rscript", os.path.join(script_dir,"segcall.R"), sys.argv[1], dataset, sys.argv[3], sys.argv[4], sys.argv[5], settingsType, sys.argv[7], sys.argv[8], tumorcsv, cellularity, user, method], stdout = errfile, stderr = errfile)
45
46 errfile.close()
47
48 if (retcode == 0):
49 if (os.path.isdir(abs_fig_dir)) and (sys.argv[7]=="TRUE"):
50
51 new_files=os.listdir(abs_fig_dir)
52 zipbuf = zipfile.ZipFile(os.path.join(abs_fig_dir,zip_file), 'w', zipfile.ZIP_DEFLATED)
53 for current_file in new_files:
54 fn = os.path.join(abs_fig_dir,current_file)
55 relfn=fn[len(abs_fig_dir)+len(os.sep):]
56 zipbuf.write(fn,relfn)
57 sys.exit(retcode)
58 else:
59 sys.exit(retcode)
60
61 if __name__ == "__main__":
62 main()