Mercurial > repos > mvdbeek > damidseq_average_scores
comparison average_scores.xml @ 0:427f5dda8854 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/damidseq_average_score commit 3f1b0838d9fd6256d61490c3b2b52936b9ce2123
author | mvdbeek |
---|---|
date | Fri, 27 Apr 2018 14:54:05 -0400 |
parents | |
children | 7fd65542efc2 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:427f5dda8854 |
---|---|
1 <tool id="average_score" name="Calculate average scores" version="0.1.3"> | |
2 <description>for fixed step interval files</description> | |
3 <requirements> | |
4 <requirement type="package" version="0.22">pandas</requirement> | |
5 </requirements> | |
6 <command detect_errors="exit_code"><![CDATA[ | |
7 python '$average_script' | |
8 ]]></command> | |
9 <configfiles> | |
10 <configfile name="average_script"> | |
11 import pandas as pd | |
12 | |
13 #set files = [str(f) for f in $input_files] | |
14 #set column = 3 if $input_files[0].ext in ['bed', 'bedgraph'] else 5 | |
15 d = {} | |
16 #for f in $files: | |
17 d['$f'] = pd.read_csv('$f', usecols=[$column], sep="\t", skiprows=$skiprows, header=None, squeeze=True) | |
18 #end for | |
19 df = pd.DataFrame.from_dict(d) | |
20 mean = df.mean(axis=1) | |
21 with open('$averaged_output', 'w') as out, open('$files[0]') as first_file: | |
22 for i, line in enumerate(first_file): | |
23 fields = line.strip().split("\t") | |
24 if i >= $skiprows: | |
25 fields[$column] = str(mean[i - $skiprows]) | |
26 out.write("%s\n" % "\t".join(fields)) | |
27 </configfile> | |
28 </configfiles> | |
29 <inputs> | |
30 <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> | |
33 <outputs> | |
34 <data name="averaged_output" format_source="input_files" label="${tool.name} on ${on_string}"/> | |
35 </outputs> | |
36 <tests> | |
37 <test> | |
38 <param name="input_files" value="1.bed,2.bed" ftype="bed"/> | |
39 <output name="averaged_output" value="averaged.bed" ftype="bed"/> | |
40 </test> | |
41 </tests> | |
42 <help><![CDATA[ | |
43 What it does | |
44 ------------ | |
45 | |
46 This tool calculates the average value for the score column across many datasets. | |
47 | |
48 ]]></help> | |
49 </tool> |