comparison average_scores.xml @ 1:7fd65542efc2 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/damidseq_average_score commit 14ffe107199084dcb9f4a9f693ef7b6be097a87b
author mvdbeek
date Sat, 28 Apr 2018 13:51:18 -0400
parents 427f5dda8854
children
comparison
equal deleted inserted replaced
0:427f5dda8854 1:7fd65542efc2
9 <configfiles> 9 <configfiles>
10 <configfile name="average_script"> 10 <configfile name="average_script">
11 import pandas as pd 11 import pandas as pd
12 12
13 #set files = [str(f) for f in $input_files] 13 #set files = [str(f) for f in $input_files]
14 #set column = 3 if $input_files[0].ext in ['bed', 'bedgraph'] else 5 14 #set column = {'bed': 4, 'bedgraph': 3, 'gff': 5, 'gff3': 5, 'gtf': 5}[$input_files[0].ext]
15 skiprows = 0
16 with open('$files[0]') as first_file:
17 for i, line in enumerate(first_file):
18 if not line.startswith(('track', 'browser', '#')):
19 skiprows = i
20 break
15 d = {} 21 d = {}
16 #for f in $files: 22 #for f in $files:
17 d['$f'] = pd.read_csv('$f', usecols=[$column], sep="\t", skiprows=$skiprows, header=None, squeeze=True) 23 d['$f'] = pd.read_csv('$f', usecols=[$column], sep="\t", skiprows=skiprows, header=None, squeeze=True)
18 #end for 24 #end for
19 df = pd.DataFrame.from_dict(d) 25 df = pd.DataFrame.from_dict(d)
20 mean = df.mean(axis=1) 26 mean = df.mean(axis=1)
21 with open('$averaged_output', 'w') as out, open('$files[0]') as first_file: 27 with open('$averaged_output', 'w') as out, open('$files[0]') as first_file:
22 for i, line in enumerate(first_file): 28 for i, line in enumerate(first_file):
23 fields = line.strip().split("\t") 29 fields = line.strip().split("\t")
24 if i >= $skiprows: 30 if i >= skiprows:
25 fields[$column] = str(mean[i - $skiprows]) 31 fields[$column] = str(mean[i - skiprows])
26 out.write("%s\n" % "\t".join(fields)) 32 out.write("%s\n" % "\t".join(fields))
27 </configfile> 33 </configfile>
28 </configfiles> 34 </configfiles>
29 <inputs> 35 <inputs>
30 <param name="input_files" type="data" multiple="true" format="bed,bedgraph,gff" label="Select the files for which to average the score"/> 36 <param name="input_files" type="data" multiple="true" format="bed,bedgraph,gff" label="Select the files for which to average the score"/>
31 <param name="skiprows" type="integer" min="0" value="0" label="Skip the first N rows" help="To skip comments and track definition lines"/>
32 </inputs> 37 </inputs>
33 <outputs> 38 <outputs>
34 <data name="averaged_output" format_source="input_files" label="${tool.name} on ${on_string}"/> 39 <data name="averaged_output" format_source="input_files" label="${tool.name} on ${on_string}"/>
35 </outputs> 40 </outputs>
36 <tests> 41 <tests>
37 <test> 42 <test>
38 <param name="input_files" value="1.bed,2.bed" ftype="bed"/> 43 <param name="input_files" value="1.bed,2.bed" ftype="bedgraph"/>
39 <output name="averaged_output" value="averaged.bed" ftype="bed"/> 44 <output name="averaged_output" value="averaged.bed" ftype="bedgraph"/>
40 </test> 45 </test>
41 </tests> 46 </tests>
42 <help><![CDATA[ 47 <help><![CDATA[
43 What it does 48 What it does
44 ------------ 49 ------------