comparison abims_sartools_deseq2_wrapper.py @ 0:581d217c7337 draft

Planemo upload
author lgueguen
date Fri, 22 Jul 2016 05:39:13 -0400
parents
children de6d0b7c17af
comparison
equal deleted inserted replaced
-1:000000000000 0:581d217c7337
1 #abims_sartools_deseq2_wrapper.py
2 #Author: Loraine Gueguen
3 # imports
4 import os, argparse
5
6
7
8 def main():
9
10 print("Start of galaxy wrapper")
11
12 #Check R and Rscript are installed
13 check_r_cmd="command -v R >/dev/null 2>&1 || { echo >&2 'This tool requires R but it is not installed. Aborting.'; exit 1; }"
14 check_rscript_cmd="command -v Rscript >/dev/null 2>&1 || { echo >&2 'This tool requires Rscript but it is not installed. Aborting.'; exit 1; }"
15 os.system(check_r_cmd)
16 os.system(check_rscript_cmd)
17
18 #Get arguments
19 parser = argparse.ArgumentParser()
20 parser.add_argument('--projectName')
21 parser.add_argument('--author')
22 parser.add_argument('--targetFile')
23 parser.add_argument('--rawDir')
24 parser.add_argument('--featuresToRemove')
25 parser.add_argument('--varInt')
26 parser.add_argument('--condRef')
27 parser.add_argument('--batch')
28 parser.add_argument('--fitType')
29 parser.add_argument('--cooksCutoff')
30 parser.add_argument('--independentFiltering')
31 parser.add_argument('--alpha')
32 parser.add_argument('--pAdjustMethod')
33 parser.add_argument('--typeTrans')
34 parser.add_argument('--locfunc')
35 parser.add_argument('--colors')
36 parser.add_argument('--figures_html')
37 parser.add_argument('--figures_html_files_path')
38 parser.add_argument('--tables_html')
39 parser.add_argument('--tables_html_files_path')
40 parser.add_argument('--rdata')
41 parser.add_argument('--report_html')
42 parser.add_argument('--log')
43 args = parser.parse_args()
44 projectName=args.projectName
45 author=args.author
46 targetFile=args.targetFile
47 rawDir=args.rawDir
48 featuresToRemove=args.featuresToRemove
49 varInt=args.varInt
50 condRef=args.condRef
51 batch=args.batch
52 fitType=args.fitType
53 cooksCutoff=args.cooksCutoff
54 independentFiltering=args.independentFiltering
55 alpha=args.alpha
56 pAdjustMethod=args.pAdjustMethod
57 typeTrans=args.typeTrans
58 locfunc=args.locfunc
59 colors=args.colors
60 figures_html=args.figures_html
61 figures_html_files_path=args.figures_html_files_path
62 tables_html=args.tables_html
63 tables_html_files_path=args.tables_html_files_path
64 rdata=args.rdata
65 report_html=args.report_html
66 log=args.log
67 #Print the parameters selected
68 print("Wrapper arguments: %s") %(args)
69
70 #Get the working directory path
71 working_directory = os.getcwd()
72 #Get the script directory path
73 script_directory=os.path.dirname(os.path.realpath(__file__))
74
75 #Unzip files from rawDir
76 rawDir_unzipped_path=working_directory+"/rawDir_unzipped"
77 os.mkdir(rawDir_unzipped_path)
78 unzip_cmd="unzip -j %s -d %s" % (rawDir,rawDir_unzipped_path) #-j arg: junk paths
79 os.system(unzip_cmd)
80
81 #Create the command
82 cmd="Rscript --no-save --no-restore %s/template_script_DESeq2_CL.r --projectName %s --author %s " % (script_directory,projectName,author)
83 cmd+="--targetFile %s --rawDir %s --featuresToRemove %s --varInt %s --condRef %s " % (targetFile,rawDir_unzipped_path,featuresToRemove,varInt,condRef)
84 if batch and batch!="NULL":
85 cmd+="--batch %s " % (batch)
86 if fitType:
87 cmd+="--fitType %s " % (fitType)
88 if cooksCutoff:
89 cmd+="--cooksCutoff %s " % (cooksCutoff)
90 if independentFiltering:
91 cmd+="--independentFiltering %s " % (independentFiltering)
92 if alpha:
93 cmd+="--alpha %s " % (alpha)
94 if pAdjustMethod:
95 cmd+="--pAdjustMethod %s " % (pAdjustMethod)
96 if typeTrans:
97 cmd+="--typeTrans %s " % (typeTrans)
98 if locfunc:
99 cmd+="--locfunc %s " % (locfunc)
100 if colors:
101 cmd+="--colors %s " % (colors)
102 cmd+="> %s 2>&1" % (log)
103 print("Rscript command: %s") % (cmd)
104 os.system(cmd)
105
106 #Get output files
107 os.mkdir(figures_html_files_path)
108 os.mkdir(tables_html_files_path)
109 rsync_figures_dir_cmd="rsync -r figures/* %s/." % (figures_html_files_path)
110 rsync_tables_dir_cmd="rsync -r tables/* %s/." % (tables_html_files_path)
111 os.system(rsync_figures_dir_cmd)
112 os.system(rsync_tables_dir_cmd)
113 figures_html_create_cmd="python %s/make_html.py --tool SARTools_DESeq2 --output_type Figures --output_dir %s --output_html %s" % (script_directory,figures_html_files_path,figures_html)
114 tables_html_create_cmd="python %s/make_html.py --tool SARTools_DESeq2 --output_type Tables --output_dir %s --output_html %s" % (script_directory,tables_html_files_path,tables_html)
115 os.system(figures_html_create_cmd)
116 os.system(tables_html_create_cmd)
117 rsync_rdata_file_cmd="rsync %s.RData %s" % (projectName,rdata)
118 rsync_report_file_cmd="rsync %s_report.html %s" % (projectName,report_html)
119 os.system(rsync_rdata_file_cmd)
120 os.system(rsync_report_file_cmd)
121
122 print("End of galaxy wrapper")
123
124 if __name__ == '__main__':
125 main()
126
127