anvi-search-functions [program]

Search functions in an anvi'o contigs database or genomes storage. Basically, this program searches for one or more search terms you define in functional annotations of genes in an anvi'o contigs database, and generates multiple reports. The default report simply tells you which contigs contain genes with functions matching to serach terms you used, useful for viewing in the interface. You can also request a much more comprehensive report, which gives you anything you might need to know for each hit and serach term.

Go back to the main page of anvi’o programs and artifacts.

Can provide


Can consume

contigs-db genomes-storage-db


This program searches for keywords in the function annotations of your database.

You can use this program to look for specific functon keywords in a contigs-db, genomes-storage-db or pan-db. For example, say you wanted your contigs-db to search for genes that encoded some type of kinase. You could call

anvi-search-functions -c contigs-db \ --search-terms kinase

By default, the output will be a fairly barren functions-txt, only telling you which contigs contain genes that matched your search. This will be most helpful as an additional layer in the anvi’o interactive interface, so you can quickly see where the kinase-encoding genes are in the genome. To do this, run anvi-interactive with the --aditional-layer parameter with the functions-txt.

However, you can also request a much more comprehensive output that contains much more information, including the matching genes’ caller id, functional annotation source and full function name.

For example, to run the same search as above, but with a more comprehensive output, you could call

anvi-search-functions -c contigs-db \ --search-terms kinase \ --full-report kinase_information.txt \ --include-sequences \ --verbose

Following this run, the file kinase_information.txt will contain comprehensive information about the matching genes, including their sequences.

You can also search for multiple terms at the same time, or for terms from only specific annotation sources. For example, if you only wanted Pfam hits with functions related to kinases or phosphatases, you could call

anvi-search-functions -c contigs-db \ --search-terms kinase,phosphatase \ --annotation-sources Pfam \ --full-report kinase_phosphatase_information.txt

Edit this file to update this information.

Additional Resources

Are you aware of resources that may help users better understand the utility of this program? Please feel free to edit this file on GitHub. If you are not sure how to do that, find the __resources__ tag in this file to see an example.