comparison phykit_alignment_based.xml @ 0:37b049bf729a draft

"planemo upload for repository https://github.com/JLSteenwyk/PhyKIT commit cbe1e8577ecb1a46709034a40dff36052e876e7a-dirty"
author padge
date Mon, 28 Mar 2022 16:23:18 +0000
parents
children 1ac6ee298657
comparison
equal deleted inserted replaced
-1:000000000000 0:37b049bf729a
1 <tool id="phykit_alignment_based" name="PhyKit - Alignment-based functions" version="0.1.0" python_template_version="3.5">
2 <requirements>
3 <requirement type="package" version="1.11.7">phykit</requirement>
4 </requirements>
5 <command detect_errors="exit_code"><![CDATA[
6
7 #if $tools.tool_selector == "create_concat"
8 #import re
9 touch 'aln_list.txt';
10 #for $input in $tools.input1
11 #set $safename = re.sub('[^\w\-_\.]', '_', $input.element_identifier)
12 ln -s '$input' $safename &&
13 echo '$safename' >> 'aln_list.txt';
14 #end for
15 phykit create_concat -a 'aln_list.txt' -p 'out';
16 cp out.fa ${fasta} ;
17 cp out.partition ${partition} ;
18 cp out.occupancy ${occupancy} ;
19 #elif $tools.tool_selector == "pairwise_identity"
20 phykit pairwise_identity $tools.input1 $tools.verbose > $pairwise_id;
21 #elif $tools.tool_selector == "parsimony_informative_sites"
22 phykit parsimony_informative_sites $tools.input1 > $parsimony_informative_sites;
23 #end if
24
25 ]]></command>
26 <inputs>
27 <conditional name="tools">
28 <param name="tool_selector" type="select" label="Select tool for processing the alignment(s)">
29 <option value="create_concat">Concatenate alignments.</option>
30 <option value="pairwise_identity">Calculate the average pairwise identity among sequences</option>
31 <option value="parsimony_informative_sites">Calculate the number and percentage of parismony informative sites</option>
32 </param>
33 <when value="create_concat">
34 <param name="input1" type="data" format="fasta" multiple="true" label="alignment list file. File should contain a single column list of alignment sequence files to concatenate into a single matrix." optional="false" />
35 </when>
36 <when value="pairwise_identity">
37 <param name="input1" type="data" format="fasta" multiple="false" label="Alignment file" optional="false" />
38 <param name="verbose" type="boolean" truevalue="--verbose" falsevalue="" checked="False" label="optional argument to print all pairwise identities" />
39 </when>
40 <when value="parsimony_informative_sites">
41 <param name="input1" type="data" format="fasta" multiple="false" label="Alignment file" optional="false" />
42 </when>
43 </conditional>
44 </inputs>
45 <outputs>
46 <data name="fasta" format="fasta" label="Concatenated fasta alignment file">
47 <filter>tools['tool_selector']=='create_concat'</filter>
48 </data>
49 <data name="partition" format="iqtree" label="A partition file ready for input into RAxML or IQ-tree">
50 <filter>tools['tool_selector']=='create_concat'</filter>
51 </data>
52 <data name="occupancy" format="txt" label="An occupancy file that summarizes the taxon occupancy per sequence">
53 <filter>tools['tool_selector']=='create_concat'</filter>
54 </data>
55 <data name="pairwise_id" format="txt" label="Summary statistics unless used with the verbose option in which all pairwise identities will be reported.">
56 <filter>tools['tool_selector']=='pairwise_identity'</filter>
57 </data>
58 <data name="parsimony_informative_sites" format="tabular" label="three tab delimited values: col1: number of parsimony informative sites col2: total number of sites col3: percentage of parsimony informative sites">
59 <filter>tools['tool_selector']=='parsimony_informative_sites'</filter>
60 </data>
61 </outputs>
62 <tests>
63 <test>
64 <param name="tool_selector" value="create_concat" />
65 <param name="input1" value="12_YPR191W_Anc_7.548_codon_aln.fasta.clipkit,12_YPR190C_Anc_7.547_codon_aln.fasta.clipkit,12_YPR189W_Anc_7.546_codon_aln.fasta.clipkit"/>
66 <output name="fasta" file="out.fa"/>
67 <output name="partition" file="out.partition"/>
68 <output name="occupancy" file="out.occupancy"/>
69 </test>
70 <test>
71 <param name="tool_selector" value="pairwise_identity" />
72 <param name="input1" value="test_alignment_0.fa"/>
73 <param name="verbose" value="false" />
74 <output name="pairwise_id" file="test_aln_pk_pi.txt"/>
75 </test>
76 <test>
77 <param name="tool_selector" value="pairwise_identity" />
78 <param name="input1" value="test_alignment_0.fa"/>
79 <param name="verbose" value="true" />
80 <output name="pairwise_id" file="test_aln_pk_pi_verbose.txt"/>
81 </test>
82 <test>
83 <param name="tool_selector" value="parsimony_informative_sites" />
84 <param name="input1" value="test_alignment_0.fa"/>
85 <output name="parsimony_informative_sites" file="test_aln_pk_pis.txt"/>
86 </test>
87 </tests>
88 <help><![CDATA[
89
90 Version: 1.11.3
91 Citation: Steenwyk et al. 2021, Bioinformatics. doi: 10.1093/bioinformatics/btab096
92 Documentation link: https://jlsteenwyk.com/PhyKIT/usage/index.html#alignment-based-functions
93 Publication link: https://academic.oup.com/bioinformatics/article-abstract/37/16/2325/6131675
94
95 PhyKIT helps process and analyze multiple sequence alignments and phylogenies.
96
97 Generally, all functions are designed to help understand the contents of alignments
98 (e.g., gc content or the number of parsimony informative sites) and the shape
99 of trees (e.g., treeness, degree of violation of a molecular clock).
100
101
102 Alignment-based commands
103 ========================
104 create_concatenation_matrix (alias: create_concat; cc)
105 - create concatenation matrix from a set of alignments
106 pairwise_identity (alias: pairwise_id, pi)
107 - calculates average pairwise identify among sequences in
108 an alignment file. This is a proxy for evolutionary rate
109 parsimony_informative_sites (alias: pis)
110 - calculates the number and percentage of parsimony
111 informative sites in an alignment
112
113
114 ]]></help>
115 <citations>
116 <citation type="bibtex">
117 @misc{githubPhyKIT,
118 author = {LastTODO, FirstTODO},
119 year = {TODO},
120 title = {PhyKIT},
121 publisher = {GitHub},
122 journal = {GitHub repository},
123 url = {https://github.com/JLSteenwyk/PhyKIT},
124 }</citation>
125 </citations>
126 </tool>