Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filter BLAST by taxid #36

Open
peterjc opened this issue Feb 26, 2014 · 2 comments
Open

Filter BLAST by taxid #36

peterjc opened this issue Feb 26, 2014 · 2 comments

Comments

@peterjc
Copy link
Owner

peterjc commented Feb 26, 2014

See email and proposed solution from Thomas Berner on the galaxy-dev list http://lists.bx.psu.edu/pipermail/galaxy-dev/2013-June/015103.html

He suggested adding a new taxid_name.loc file, e.g.

$ more taxid_name.loc 
Hordeum vulgare 4513
Oryza sativa    4530
Sorghum bicolor 4558
Triticum aestivum       4565
Triticum urartu 4572
Brachypodium distachyon 15368

And new parameter,

+        <conditional name="taxon">
+            <param name="taxid_selector" type="select" label="Filter by taxon id (taxid)?">
+              <option value="no" selected="True">No filtering</option>
+              <option value="yes">Filter by user-selected taxid</option>
+            </param>
+           <when value="yes">
+                <repeat name="multitax" title="taxid" min="1">
+                       <param name="taxid" label="taxid" type="select">
+                               <options from_file="taxid_name.loc">
+                                       <column name="name" index="0"/>
+                                       <column name="value" index="1"/>
+                               </options>
+                       </param>
+                       <param name="exclude" label="exlude" type="boolean"/> 
+                 </repeat>
+           </when>
+       </conditional>

with associated Cheetah syntax for the command string:

+#if $taxon.taxid_selector == "yes":
+       #for $r in $taxon.multitax:
+               #if $r.exclude:
+                       -negative_gilist $r.taxid
+               #else
+                       -window_masker_taxid "$r.taxid"
+               #end if
+       #end for
+#end if

The -window_masker_taxid option seems to make sense (although may require some setup work - see http://www.ncbi.nlm.nih.gov/books/NBK1763/ for details),

 -window_masker_taxid 
   Enable WindowMasker filtering using a Taxonomic ID

However, for exclusion is it possible to give a taxid to -negative_gilist (or -gilist)?

@peterjc
Copy link
Owner Author

peterjc commented Mar 3, 2014

Note that only blastn provides -window_masker_taxid (not available in blastp, blastx, tblastn, tblastx).

@peterjc
Copy link
Owner Author

peterjc commented Dec 27, 2014

See also my BLAST+ Christmas Wish List http://blastedbio.blogspot.com/2014/12/blast-christmas-wish-list.html entry Taxonomy filters

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant