annotate microsatbed.xml @ 19:db5523378e5c draft

planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
author fubar
date Wed, 17 Jul 2024 07:40:00 +0000
parents 607620f93b4c
children 410144c7b2d6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16
ee773bbde3c3 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 13
diff changeset
1 <tool name="STR to bed" id="microsatbed" version="1.3.0a" profile="22.05">
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
2 <description>Short Tandem Repeats to bed features from fasta</description>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
3 <requirements>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
4 <requirement version="3.12.3" type="package">python</requirement>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
5 <requirement version="2.1.0" type="package">pyfastx</requirement>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
6 <requirement version="1.3.0" type="package">pytrf</requirement>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
7 </requirements>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
8 <required_files>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
9 <include path="find_str.py"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
10 </required_files>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
11 <version_command><![CDATA[python -c "import pytrf; from importlib.metadata import version; print(version('pytrf'))"]]></version_command>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
12 <command><![CDATA[
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
13 #if $mode_cond.mode == "NATIVE":
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
14 #if $reference_genome.genome_type_select == "history":
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
15 pytrf findstr -f '$mode_cond.outformat' -o $bed -r $monomin $dimin $trimin $tetramin $pentamin $hexamin '${reference_genome.fasta}'
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
16 #else:
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
17 pytrf findstr -f '$mode_cond.outformat' -o $bed -r $monomin $dimin $trimin $tetramin $pentamin $hexamin '${reference_genome.fasta.fields.path}'
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
18 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
19 #else:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
20 python '${__tool_directory__}/find_str.py'
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
21 #if $reference_genome.genome_type_select == "history":
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
22 --fasta '${reference_genome.fasta}'
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
23 #else:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
24 --fasta '${reference_genome.fasta.fields.path}'
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
25 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
26 --bed '$bed'
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
27 #if $mode_cond.mode == "SPECIFIC":
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
28 --specific '$mode_cond.specific'
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
29 #else:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
30 #if "MONO" in $mode_cond.subset:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
31 --mono
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
32 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
33 #if "DI" in $mode_cond.subset:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
34 --di
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
35 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
36 #if "TRI" in $mode_cond.subset:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
37 --tri
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
38 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
39 #if "TETRA" in $mode_cond.subset:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
40 --tetra
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
41 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
42 #if "PENTA" in $mode_cond.subset:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
43 --penta
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
44 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
45 #if "HEXA" in $mode_cond.subset:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
46 --hexa
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
47 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
48 #end if
18
607620f93b4c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 17
diff changeset
49 --monomin '$monomin'
607620f93b4c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 17
diff changeset
50 --dimin '$dimin'
607620f93b4c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 17
diff changeset
51 --trimin '$trimin'
607620f93b4c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 17
diff changeset
52 --tetramin '$tetramin'
607620f93b4c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 17
diff changeset
53 --pentamin '$pentamin'
607620f93b4c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 17
diff changeset
54 --hexamin '$hexamin'
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
55 #end if
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
56 ]]></command>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
57 <inputs>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
58 <conditional name="reference_genome">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
59 <param name="genome_type_select" type="select" label="Select a source for fasta sequences to be searched for STRs" help="Options are to choose a built-in genome, or choose any history fasta file">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
60 <option value="indexed">Use a Galaxy server built-in reference genome fasta</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
61 <option value="history" selected="True">Use any fasta file from the current history</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
62 </param>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
63 <when value="indexed">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
64 <param name="fasta" type="select" multiple="false" label="Choose a built-in genome"
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
65 help="If the genome you need is not on the list, upload it and select it as a current history fasta">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
66 <options from_data_table="all_fasta"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
67 </param>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
68 </when>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
69 <when value="history">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
70 <param name="fasta" type="data" format="fasta,fasta.gz" optional="false" multiple="false" label="Choose a fasta file from the current history"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
71 </when>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
72 </conditional>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
73 <conditional name="mode_cond">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
74 <param name="mode" type="select" label="Select patterns by motif length; or provide a specific motif pattern to report?" help="Choose *By length:* or *By pattern:* to configure STR selection mode">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
75 <option selected="True" value="ALL">By length: Report all motifs of one or more specified lengths (1-6nt) as bed features</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
76 <option value="SPECIFIC">By motif: Report one or more specific motifs (such as TCA,GC) as bed features</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
77 <option value="NATIVE">All exact STR: use the pytrf findstr native command to a create csv, tsv or gtf output</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
78 </param>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
79 <when value="ALL">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
80 <param name="subset" type="select" multiple="true" optional="false" label="Select at least 1 specific motif length to report"
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
81 help="Bed features will be output for every motif of the selected length(s) with the minimum required repeats or more">
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
82 <option value="DI" selected="true">All dimers (AC,AG,AT,...)</option>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
83 <option value="TRI">All trimers (ACG,..)</option>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
84 <option value="TETRA">All tetramers (ACGT,..)</option>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
85 <option value="PENTA">All pentamers (ACGTC,..)</option>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
86 <option value="HEXA">All hexamers (ACGTCG,..)</option>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
87 <option value="MONO">All monomers (A,C...). Warning! Can produce overwhelming numbers of bed features</option>
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
88 </param>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
89 </when>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
90 <when value="SPECIFIC">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
91 <param name="specific" type="text" label="Supply a specific motif pattern. Separate multiple patterns with commas such as GA,GC"
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
92 help="Make bed features only for the nominated specific motifs." optional="false"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
93 </when>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
94 <when value="NATIVE">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
95 <param name="outformat" type="select" optional="false" label="Select the required output format"
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
96 help="Pytrf can create GFF, CSV or TSV output files. Documentation is linked in the help section below">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
97 <option value="gff" >GFF</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
98 <option value="csv">Comma separated values</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
99 <option value="tsv" selected="true">Tab separated values</option>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
100 </param>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
101 </when>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
102 </conditional>
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
103 <param type="integer" min="2" name="monomin" value="10"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
104 <param type="integer" min="1" name="dimin" value="3"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
105 <param type="integer" min="2" name="trimin" value="2"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
106 <param type="integer" min="2" name="tetramin" value="2"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
107 <param type="integer" min="2" name="pentamin" value="2"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
108 <param type="integer" min="2" name="hexamin" value="2"/>
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
109 </inputs>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
110 <outputs>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
111 <data name="bed" format="bed" label="STR from $fasta.element_identifier" hidden="false">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
112 <change_format>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
113 <when input="mode_cond.outformat" value="gff" format="gff" />
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
114 <when input="mode_cond.outformat" value="csv" format="csv" />
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
115 <when input="mode_cond.outformat" value="tsv" format="tabular" />
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
116 </change_format>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
117 </data>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
118 </outputs>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
119 <tests>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
120 <test expect_num_outputs="1">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
121 <conditional name="reference_genome">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
122 <param name="genome_type_select" value="history"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
123 <param name="fasta" value="humsamp.fa"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
124 </conditional>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
125 <conditional name="mode_cond">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
126 <param name="mode" value="ALL"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
127 <param name="subset" value="DI,TRI,TETRA,PENTA,HEXA"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
128 </conditional>
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
129 <param name="monomin" value="20"/>
19
db5523378e5c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 18
diff changeset
130 <param name="dimin" value="20"/>
db5523378e5c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 18
diff changeset
131 <param name="trimin" value="5"/>
db5523378e5c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 18
diff changeset
132 <param name="tetramin" value="5"/>
db5523378e5c planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 18
diff changeset
133 <param name="pentamin" value="3"/>
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
134 <param name="hexamin" value="2"/>
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
135 <output name="bed" value="bed_sample" compare="diff" lines_diff="0"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
136 </test>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
137 <test expect_num_outputs="1">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
138 <conditional name="reference_genome">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
139 <param name="genome_type_select" value="history"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
140 <param name="fasta" value="humsamp.fa"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
141 </conditional>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
142 <conditional name="mode_cond">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
143 <param name="mode" value="SPECIFIC"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
144 <param name="specific" value="GC"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
145 </conditional>
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
146 <param name="monomin" value="20"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
147 <param name="dimin" value="1"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
148 <param name="trimin" value="20"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
149 <param name="tetramin" value="20"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
150 <param name="pentamin" value="20"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
151 <param name="hexamin" value="20"/>
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
152 <output name="bed" value="dibed_sample" compare="diff" lines_diff="0"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
153 </test>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
154 <test expect_num_outputs="1">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
155 <conditional name="reference_genome">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
156 <param name="genome_type_select" value="history"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
157 <param name="fasta" value="mouse.fa"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
158 </conditional>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
159 <conditional name="mode_cond">
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
160 <param name="mode" value="NATIVE"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
161 <param name="outformat" value="gff"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
162 </conditional>
17
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
163 <param name="monomin" value="20"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
164 <param name="dimin" value="10"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
165 <param name="trimin" value="5"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
166 <param name="tetramin" value="4"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
167 <param name="pentamin" value="4"/>
264d79548d19 planemo upload for repository https://github.com/fubar2/microsatbed commit d952bc313f408735456747c3d33e09a3170c8f59-dirty
fubar
parents: 16
diff changeset
168 <param name="hexamin" value="2"/>
11
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
169 <output name="bed" value="nativegff_sample" compare="diff" lines_diff="0"/>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
170 </test>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
171 </tests>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
172 <help><![CDATA[
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
173
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
174 **Convert short repetitive sequences to bed features**
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
175
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
176 Microsatellites are usually defined as repeated short DNA patterns in an unbroken sequence.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
177 A microsatellite pattern or *motif* can be any combination nucleotides, typically from 1 to 6nt in length.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
178
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
179 This tool allows microsatellite and related features to be selected from a fasta sequence input file, and output into a single bed track, suitable for viewing in a genome browser such as JBrowse2.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
180
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
181 All motifs of selected lengths can be reported as individual features in the output bed file, or specific motifs can be provided and all
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
182 others will be ignored. In all cases, a minimum required number of repeats can be specified. For example, requiring 2 or more repeats of the trimer *ACG* will report
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
183 every sequence of *ACGACG* or *ACGACGACG* or *ACGACGACGACG* and so on, as individual bed features. Similarly, requiring 3 repeats of any trimer will
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
184 report every distinct 3 nucleotide pattern, including *ACGACGACG* as well as every other unique 3 nucleotide pattern with 3 sequential repeats or more such, as "CTCCTCCTC*.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
185
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
186 For other output formats, the pytrf native command line *findstr* can be used to produce a gff, csv or tsv output containing all exact short tandem repeats, as
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
187 described at the end of https://pytrf.readthedocs.io/en/latest
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
188
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
189 A fasta file must be supplied for processing. A built in genome can be selected, or a fasta file of any kind can be selected from the current history. Note that all
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
190 symbols are treated as valid nucleotides by pytrf, so extraneous characters such as *-* or *N* in the input fasta may appear as unexpected bed features. Lower case fasta symbols will be converted
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
191 to uppercase, to prevent them being reported as distinct motifs.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
192
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
193
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
194 **Select motifs by length**
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
195
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
196 The default tool form setting is to select all dimer motif patterns.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
197
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
198 Additional motif lengths from 1 to 6nt can be selected in the multiple-select drop-down list. All features will be returned in a single bed file. For each selected motif length,
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
199 the minimum number of repeats required for reporting can be adjusted. **Tandem repeats** are defined as at least 2 of any pattern. This tool allows singleton motifs to be reported,
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
200 so is not restricted to short tandem repeats (STR)
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
201
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
202 **Select motifs by pattern**
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
203
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
204 This option allows a motif pattern to be specified as a text string such as *CG* or *ATC*. Multiple motifs can be specified as a comma separated string such as *CG,ATC*.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
205 All features will be returned as a single bed file.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
206
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
207 The minimum number of repeats for all motifs can be set to match specific requirements.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
208
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
209 For example, technical sequencing read bias may be influenced by the density of specific dimers, whether they are repeated or not
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
210 such as in https://github.com/arangrhie/T2T-Polish/tree/master/pattern
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
211
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
212 **Select all perfect STR using pytrf findstr in csv, tsv or gff output format**
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
213
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
214 This selection runs the pytrf *findstr* option to create gff/csv/tsv outputs as described at the end of https://pytrf.readthedocs.io/en/latest/.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
215
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
216 Quoted here:
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
217
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
218 *A Tandem repeat (TR) in genomic sequence is a set of adjacent short DNA sequence repeated consecutively. The core sequence or repeat unit is generally called motif.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
219 According to the motif length, tandem repeats can be classified as microsatellites and minisatellites. Microsatellites are also known as simple sequence repeats (SSRs)
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
220 or short tandem repeats (STRs) with motif length of 1-6 bp. Minisatellites are also sometimes referred to as variable number of tandem repeats (VNTRs) has longer motif length than microsatellites.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
221 Pytrf is a lightweight Python C extension for identification of tandem repeats. The pytrf enables to fastly identify both exact or perfect SSRs.
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
222 It also can find generic tandem repeats with any size of motif, such as with maximum motif length of 100 bp. Additionally, it has capability of finding approximate or imperfect tandem repeats*
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
223
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
224 ]]></help>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
225 <citations>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
226 <citation type="bibtex">@misc{pytrf,
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
227 title = {{pytrf} Short tandem repeat finder, Accessed on July 10 2024},
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
228 howpublished = {\url{https://github.com/lmdu/pytrf}},
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
229 note = {Accessed on July 10 2024}
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
230 }</citation>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
231 </citations>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
232 </tool>
a633c1c45da3 Uploaded
fubar
parents:
diff changeset
233