Mercurial > repos > lgueguen > sartools
comparison abims_sartools_edger_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_edger_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('--alpha') | |
29 parser.add_argument('--pAdjustMethod') | |
30 parser.add_argument('--cpmCutoff') | |
31 parser.add_argument('--geneSelection') | |
32 parser.add_argument('--normalizationMethod') | |
33 parser.add_argument('--colors') | |
34 parser.add_argument('--figures_html') | |
35 parser.add_argument('--figures_html_files_path') | |
36 parser.add_argument('--tables_html') | |
37 parser.add_argument('--tables_html_files_path') | |
38 parser.add_argument('--rdata') | |
39 parser.add_argument('--report_html') | |
40 parser.add_argument('--log') | |
41 args = parser.parse_args() | |
42 projectName=args.projectName | |
43 author=args.author | |
44 targetFile=args.targetFile | |
45 rawDir=args.rawDir | |
46 featuresToRemove=args.featuresToRemove | |
47 varInt=args.varInt | |
48 condRef=args.condRef | |
49 batch=args.batch | |
50 alpha=args.alpha | |
51 pAdjustMethod=args.pAdjustMethod | |
52 cpmCutoff=args.cpmCutoff | |
53 geneSelection=args.geneSelection | |
54 normalizationMethod=args.normalizationMethod | |
55 colors=args.colors | |
56 figures_html=args.figures_html | |
57 figures_html_files_path=args.figures_html_files_path | |
58 tables_html=args.tables_html | |
59 tables_html_files_path=args.tables_html_files_path | |
60 rdata=args.rdata | |
61 report_html=args.report_html | |
62 log=args.log | |
63 #Print the parameters selected | |
64 print("Wrapper arguments: %s") %(args) | |
65 | |
66 #Get the working directory path | |
67 working_directory = os.getcwd() | |
68 #Get the script directory path | |
69 script_directory=os.path.dirname(os.path.realpath(__file__)) | |
70 | |
71 #Unzip files from rawDir | |
72 rawDir_unzipped_path=working_directory+"/rawDir_unzipped" | |
73 os.mkdir(rawDir_unzipped_path) | |
74 unzip_cmd="unzip -j %s -d %s" % (rawDir,rawDir_unzipped_path) #-j arg: junk paths | |
75 os.system(unzip_cmd) | |
76 | |
77 #Create the command | |
78 cmd="Rscript --no-save --no-restore %s/template_script_edgeR_CL.r --projectName %s --author %s " % (script_directory,projectName,author) | |
79 cmd+="--targetFile %s --rawDir %s --featuresToRemove %s --varInt %s --condRef %s " % (targetFile,rawDir_unzipped_path,featuresToRemove,varInt,condRef) | |
80 if batch and batch!="NULL": | |
81 cmd+="--batch %s " % (batch) | |
82 if alpha: | |
83 cmd+="--alpha %s " % (alpha) | |
84 if pAdjustMethod: | |
85 cmd+="--pAdjustMethod %s " % (pAdjustMethod) | |
86 if cpmCutoff: | |
87 cmd+="--cpmCutoff %s " % (cpmCutoff) | |
88 if geneSelection: | |
89 cmd+="--gene.selection %s " % (geneSelection) | |
90 if normalizationMethod: | |
91 cmd+="--normalizationMethod %s " % (normalizationMethod) | |
92 if colors: | |
93 cmd+="--colors %s " % (colors) | |
94 cmd+="> %s 2>&1" % (log) | |
95 print("Rscript command: %s") % (cmd) | |
96 os.system(cmd) | |
97 | |
98 #Get output files | |
99 os.mkdir(figures_html_files_path) | |
100 os.mkdir(tables_html_files_path) | |
101 rsync_figures_dir_cmd="rsync -r figures/* %s/." % (figures_html_files_path) | |
102 rsync_tables_dir_cmd="rsync -r tables/* %s/." % (tables_html_files_path) | |
103 os.system(rsync_figures_dir_cmd) | |
104 os.system(rsync_tables_dir_cmd) | |
105 figures_html_create_cmd="python %s/make_html.py --tool SARTools_edgeR --output_type Figures --output_dir %s --output_html %s" % (script_directory,figures_html_files_path,figures_html) | |
106 tables_html_create_cmd="python %s/make_html.py --tool SARTools_edgeR --output_type Tables --output_dir %s --output_html %s" % (script_directory,tables_html_files_path,tables_html) | |
107 os.system(figures_html_create_cmd) | |
108 os.system(tables_html_create_cmd) | |
109 rsync_rdata_file_cmd="rsync %s.RData %s" % (projectName,rdata) | |
110 rsync_report_file_cmd="rsync %s_report.html %s" % (projectName,report_html) | |
111 os.system(rsync_rdata_file_cmd) | |
112 os.system(rsync_report_file_cmd) | |
113 | |
114 print("End of galaxy wrapper") | |
115 | |
116 if __name__ == '__main__': | |
117 main() | |
118 | |
119 |