Home Software Services About Contact     
Follow on twitter

Robert C. Edgar on twitter

11-Aug-2018 New paper describes octave plots for visualizing alpha diversity.

12-Jun-2018 New paper shows that one in five taxonomy annotations in SILVA and Greengenes are wrong.

18-Apr-2018 New paper shows that taxonomy prediction accuracy is <50% for V4 sequences.

05-Oct-2017 PeerJ paper shows low accuracy of closed- and open-ref. QIIME OTUs.

22-Sep-2017 New paper shows 97% threshold is wrong, OTUs should be 99% full-length 16S, 100% for V4.

UPARSE tutorial video posted on YouTube. Make OTUs from MiSeq reads.



weak hits

A weak hit is a hit that is reported in the output files, but does not satisfy the accept criteria. Since weak hits are not accepts they cannot terminate a search.
Option   Description
-weak_id   Identity threshold. Must be less than -id.
-weak_evalue   Evalue threshold. Must be greater than -evalue.

Weak hits in ublast
Weak hits are especially useful in ublast together with termination options. With ublast, targets are compared to the query in an order that does not correlate well with sequence similarity or E-value. With these commands, the first accepted hit is not expected to be close to the best possible hit. Termination conditions are therefore disabled by default.

However, consider a situation where a typical query has one or more hits to the database. If on average a query has one hit, the speedup with -maxaccepts 1 would be approximately 2x since targets are examined in an effectively random order, so the hit will be found after comparing with half of the targets, on average. If the average query has N hits, the first hit will be found after searching 1/(N+1)th of the database. Using -maxaccepts 1 -maxrejects 0 would therefore give roughly an (N+1)x speedup.

It can therefore be useful to say something like "to maximize speed, stop the search if you find a hit with E-value < 1e-9, but I also want hits with E-value < 0.01 in case one is not found". This can be done with a command line like this:

  usearch -ublast query.fasta -db db.udb -evalue 1e-9 -weak_evalue 0.01 \
    -maxaccepts 1 -maxrejects 0 -blast6out results.m8