Mercurial > repos > bgruening > column_arrange_by_header
changeset 1:b97f0d9a31ff draft
planemo upload commit 088e73e958b55dc765778641b8a84080cc289f85-dirty
author | bgruening |
---|---|
date | Fri, 16 Oct 2015 14:19:29 -0400 |
parents | b84c81b7d762 |
children | 808d5451957e |
files | columnArrange.xml column_arrange.py column_arrange_by_header.tar.gz tool_dependencies.xml |
diffstat | 4 files changed, 70 insertions(+), 67 deletions(-) [+] |
line wrap: on
line diff
--- a/columnArrange.xml Mon Mar 02 09:59:32 2015 -0500 +++ b/columnArrange.xml Fri Oct 16 14:19:29 2015 -0400 @@ -1,65 +1,61 @@ <tool id="bg_column_arrange_by_header" name="Column arrange" version="0.1"> - <description>by header name</description> - <requirements> - <requirement type="package" version="0.14.1">pandas</requirement> - </requirements> - <!--<code file="column_sort_tab_options.py"/>--> - <command interpreter="python"> - <![CDATA[ - column_arrange.py - --columns - #for token in $rep_param_columns: - "$token.param_column" - #end for - --in $param_input - --out $output - ]]> - </command> - <inputs> - <param format="tabular" name="param_input" type="data" label="file to rearrange" /> - - <repeat name ="rep_param_columns" min="1" title="Specify the first few columns by name"> - - <param name="param_column" type="text" size="50" value="" label="column"> - <sanitizer> - <valid initial="string.printable"> - <remove value="'"/> - </valid> - </sanitizer> - </param> - - </repeat> - <!--<param name="param_columns_dummy" type="select" optional="true" multiple="true" label="Columns" dynamic_options="get_options(param_input.file_name)" help="Do not select columns here, this field just shows possible columns."/>--> - </inputs> - <outputs> - <data format="tabular" name="output" /> - </outputs> - <tests> - <test> - <param name="param_input" value="columnarrange_input1.tab"/> - <repeat name="rep_param_columns"> - <param name="param_column" value="fname"/> + <description>by header name</description> + <requirements> + <requirement type="package" version="0.14.1">pandas</requirement> + </requirements> + <command interpreter="python"> + <![CDATA[ + column_arrange.py + --columns + #for token in $rep_param_columns: + "$token.param_column" + #end for + --in $param_input + --out $output + ]]> + </command> + <inputs> + <param format="tabular" name="param_input" type="data" label="file to rearrange" /> + <repeat name ="rep_param_columns" min="1" title="Specify the first few columns by name"> + <param name="param_column" type="text" value="" label="column"> + <sanitizer> + <valid initial="string.printable"> + <remove value="'"/> + </valid> + </sanitizer> + </param> </repeat> - <repeat name="rep_param_columns"> - <param name="param_column" value="age"/> - </repeat> - <output name="out" file="columnarrange_result1.tab"/> - </test> - <test> - <param name="param_input" value="columnarrange_input2.tab"/> - <repeat name="rep_param_columns"> - <param name="param_column" value="first name"/> - </repeat> - <repeat name="rep_param_columns"> - <param name="param_column" value="nationality"/> - </repeat> - <output name="out" file="columnarrange_result2.tab"/> - </test> - </tests> - <help> + </inputs> + <outputs> + <data format="tabular" name="output" /> + </outputs> + <tests> + <test> + <param name="param_input" value="columnarrange_input1.tab"/> + <repeat name="rep_param_columns"> + <param name="param_column" value="fname"/> + </repeat> + <repeat name="rep_param_columns"> + <param name="param_column" value="age"/> + </repeat> + <output name="out" file="columnarrange_result1.tab"/> + </test> + <test> + <param name="param_input" value="columnarrange_input2.tab"/> + <repeat name="rep_param_columns"> + <param name="param_column" value="first name"/> + </repeat> + <repeat name="rep_param_columns"> + <param name="param_column" value="nationality"/> + </repeat> + <output name="out" file="columnarrange_result2.tab"/> + </test> + </tests> + <help> **What it does** -With this tool you can specify (by naming the header) which columns need to be leftmost. The columns which are not specified will be ordered as before, right of the columns which were specified. +With this tool you can specify (by naming the header) which columns need to be leftmost. +The columns which are not specified will be ordered as before, right of the columns which were specified. Input file:: @@ -72,7 +68,16 @@ CHeader BHeader AHeader DHeader c b a d c b a d - - </help> + </help> + <citations> + <citation type="bibtex"> + @ARTICLE{bgruening_galaxytools, + Author = {Björn Grüning, Cameron Smith, Torsten Houwaart, Nicola Soranzo, Eric Rasche}, + keywords = {bioinformatics, ngs, galaxy, cheminformatics, rna}, + title = {{Galaxy Tools - A collection of bioinformatics and cheminformatics tools for the Galaxy environment}}, + url = {https://github.com/bgruening/galaxytools} + } + </citation> + </citations> </tool>
--- a/column_arrange.py Mon Mar 02 09:59:32 2015 -0500 +++ b/column_arrange.py Fri Oct 16 14:19:29 2015 -0400 @@ -2,19 +2,17 @@ import pandas as pd import argparse - parser = argparse.ArgumentParser() parser.add_argument('-i', '--input', help='Tabular Input File Name') parser.add_argument('-o','--output', help='Tabular Output File') -parser.add_argument('-c', '--columns',nargs='+', help='Column Headers to Sort By') +parser.add_argument('-c', '--columns', nargs='+', help='Column Headers to Sort By') args=parser.parse_args() -cols=args.columns -table=pd.read_csv(args.input,sep='\t') +cols = args.columns +table = pd.read_csv(args.input, sep='\t') blist = list(table.columns) for token in cols: blist.remove(token) sorted_table = table[args.columns + blist] # write without index, seperated by tabs -sorted_table.to_csv(args.output,sep='\t',index=False) - +sorted_table.to_csv(args.output, sep='\t', index=False)
--- a/tool_dependencies.xml Mon Mar 02 09:59:32 2015 -0500 +++ b/tool_dependencies.xml Fri Oct 16 14:19:29 2015 -0400 @@ -1,6 +1,6 @@ <?xml version="1.0"?> <tool_dependency> <package name="pandas" version="0.14.1"> - <repository changeset_revision="ef98e20431a7" name="package_pandas_0_14" owner="iuc" toolshed="https://testtoolshed.g2.bx.psu.edu" /> + <repository changeset_revision="045c4645abdf" name="package_pandas_0_14" owner="iuc" toolshed="https://testtoolshed.g2.bx.psu.edu" /> </package> </tool_dependency>