anvi-get-codon-usage-bias

Get codon usage bias (CUB) statistics of genes and functions.

🔙 To the main page of anvi’o programs and artifacts.

Authors

Requires

contigs-db

Can use

profile-db collection bin internal-genomes external-genomes

Provides

This program does not seem to provide any artifacts. Such programs usually print out some information for you to see or alter some anvi’o artifacts without producing any immediate outputs.

Usage

This program calculates codon usage bias (CUB) among genes or functions.

A range of options allows control over the CUB calculation to remove statistically spurious results.

Some CUB metrics depend on a reference codon composition while others are reference-independent. The reference often constitutes expected high-expression genes, such as ribosomal proteins. This program allows customization of the reference. It also introduces an “omnibias” mode, in which reference compositions are determined from every gene (or function), and CUB is calculated for every combination of query and reference gene. This produces a square distance-like matrix of CUB values that can be used to cluster genes or functions by their biases relative to one another.

Basic commands

CUB of genes

This command produces a table of CUB values from coding sequences in the contigs database. The first column of the table contains gene caller IDs and each subsequent column contains values for a CUB metric, e.g., the Codon Adaptation Index (CAI) of Sharp and Li, 1987 and 𝛿 of Ran and Higgs, 2012. CUB metrics that rely upon a reference codon composition, such as CAI and 𝛿, establish this composition from genes in the genome that are annotated as ribosomal proteins by KEGG KOfams/BRITE. Certain parameters have default values to increase the statistical significance of results (--query-min-analyzed-codons, --reference-exclude-amino-acid-count, --reference-min-analyzed-codons).

anvi-get-codon-usage-bias -c contigs-db \ -o path/to/output.txt

CUB of functions

This command produces a table of CUB values for functions rather than genes. By using --function-sources without any arguments, the output will include every functions source available in a given contigs-db, e.g., KOfam, KEGG_BRITE, Pfam (you can always see the complete list of functions in your contigs-db by running the program anvi-db-info on it). The first four columns of the table before CUB values contain, respectively, gene caller IDs, function sources, accessions, and names.

anvi-get-codon-usage-bias -c contigs-db \ -o path/to/output.txt \ --function-sources

Custom CUB reference gene set

This command establishes a CUB reference codon composition from genes with functional annotations defined a supplemental file. This file should be headerless, tab-delimited, and have three columns of function annotation sources (required), function accessions, and function names (either an accession or name is required).

anvi-get-codon-usage-bias -c contigs-db \ -o path/to/output.txt \ --select-reference-functions-txt path/to/select-reference-functions.txt

“Omnibias” CUB

In reference-dependent CUB metrics, genes or functions are compared to a reference codon composition, such as from ribosomal proteins. “Omnibias” mode compares each gene/function “query” not to a single reference, but to each other gene/function. This generates a square distance-like matrix of CUB values that can be used to cluster genes/functions by their biases relative to one another. The output path given in the command is modified to create an output file of the omnibias matrix for each CUB metric.

anvi-get-codon-usage-bias -c contigs-db \ -o path/to/output.txt \ --omnibias

CUB from multiple internal and external genomes

This command produces a CUB table per genome, modifying the output path given in the command to create a separate output file per genome. Collection of genomes can be provided as internal-genomes, external-genomes, or both:

anvi-get-codon-usage-bias -i internal-genomes \ -e external-genomes \ -o path/to/output.txt

Option examples

The following tables show the options to get the requested results.

Selecting CUB metrics and references

Get Options
With certain, rather than all, CUB metrics --metrics cai
With query sequences also used as references --omnibias
With a custom reference defined by functional annotations --select-reference-functions-txt path/to/select_reference_functions.txt
With a custom reference defined by certain genes --reference-gene-caller-ids 0 2 500

CUB from sets of genes with shared functions

Get Options
All function annotation sources --function-sources
All KEGG BRITE categories --function-sources KEGG_BRITE
All KEGG KOfams and all Pfams --function-sources KOfam Pfam
Certain KEGG BRITE categories --function-sources KEGG_BRITE --function-names Ribosome Ribosome>>>Ribosomal proteins
Certain KEGG KOfam accessions --function-sources KOfam --function-accessions K00001 K00002
Certain BRITE categories and KOfam accessions --select-functions-txt path/to/select_functions.txt

CUB from selections of genes

Get Options
From contigs database --contigs-db path/to/contigs.db
From collection of internal genomes --contigs-db path/to/contigs.db --profile-db path/to/profile.db --collection-name my_bins
From internal genome --contigs-db path/to/contigs.db --profile-db path/to/profile.db --collection-name my_bins --bin-id my_bin
From internal genomes listed in a file --internal-genomes path/to/genomes.txt
From external genomes (contigs databases) listed in a file --external-genomes path/to/genomes.txt
With certain gene IDs --gene-caller-ids 0 2 500
With certain gene IDs or genes annotated with certain KOfams --gene-caller-ids 0 2 500 --function-sources KOfam --function-accessions K00001

Filtering genes and codons in analyzed and reported queries

Get Options
Exclude genes shorter than 300 codons from queries --gene-min-codons 300
Exclude genes shorter than 300 codons from contributing to function queries --gene-min-codons 300 --function-sources
Exclude function queries with <300 codons --function-min-codons 300
Exclude stop codons and single-codon amino acids --exclude-amino-acids STP Met Trp
Exclude codons for amino acids with <5 codons in >90% of genes --pansequence-min-amino-acids 5 0.9
Replace codons for amino acids with <5 codons in the gene or function with NaN --sequence-min-amino-acids 5
Exclude queries with <300 codons involved in the CUB calculation --query-min-analyzed-codons 300

Filtering genes and codons in analyzed references

Get Options
Codons with a frequency <20 are excluded from the reference and CUB calculation --reference-exclude-amino-acid-count 20
Exclude references with <300 codons involved in the CUB calculation --reference-min-analyzed-codons 300

Option details

Functions

Functions and function annotation sources (e.g., ‘KOfam’, ‘Pfam’) can be provided to calculate CUB for functions rather than genes.

Inputs

There are multiple options to define which functions and sources should be used as CUB queries. --functions-sources without arguments uses all available sources that had been used to annotate genes.

--function-accessions and --function-names select functions from a single provided source. The following example uses both options to select COG functions.

anvi-get-codon-usage-bias -c contigs-db \ -o path/to/output_table.txt \ --function-sources COG14_FUNCTION \ --function-accessions COG0004 COG0005 \ --function-names “Ammonia channel protein AmtB” “Purine nucleoside phorphorylase”

To use different functions from different sources, a tab-delimited file can be provided to functions-txt. This headerless file must have three columns, for source, accession, and name of functions, respectively, with an entry in each row for source.

By default, selected function accessions or names do not need to be present in input genomes; the program will query any selected function accessions or names that annotated genes. This behavior can be changed using the flag, --expect-functions, so that the program will throw an error when any of the selected accessions or names are absent.

BRITE hierarchies

Genes are classified in KEGG BRITE functional hierarchies by anvi-run-kegg-kofams. For example, a bacterial SSU ribosomal protein is classified in a hierarchy of ribosomal genes, Ribosome>>>Ribosomal proteins>>>Bacteria>>>Small subunit. CUB can be calculated for function queries at each level of the hierarchy, from the most general, those genes in the Ribosome, to the most specific – in the example, those genes in Ribosome>>>Ribosomal proteins>>>Bacteria>>>Small subunit. Therefore, the following command returns CUB values for each annotated hierarchy level – in the example, the output would include four rows for the genes in each level from Ribosome to Small subunit.

anvi-get-codon-usage-bias -c contigs-db \ -o path/to/output_table.txt \ --function-sources KEGG_BRITE

Custom reference

A custom reference codon composition for reference-dependent CUB calculations can be defined by functional annotations and/or genes IDs. By default, the reference codon composition is defined by the concatenation of all genes in the genome annotated as ribosomal proteins by KEGG KOfams/BRITE.

Reference functions

Use --select-reference-functions-txt to provide a table of functional annotations defining a custom set of reference genes. The tab-delimited file should not have a header, but should have three columns of 1) function annotation sources, such as ‘KEGG_BRITE’, ‘KOfam’, or ‘Pfam’, 2) function accession, such as ‘K00001’ for KOfam, and 3) function name, such as ‘Ribosome»>Ribosomal proteins’ for KEGG_BRITE. Every row must contain a source and either a function accession or name.

Require all functions be present

Use --expect-functions to require that all functions that define the reference are found in the genome, else an error will be thrown. By default, not all provided functions need to be represented among the reference genes.

Reference genes

Use --reference-gene-caller-ids for select genes to be in the custom reference gene set. This only works when processing a single genome. An error will be thrown if not all of the provided gene caller IDs are present in the genome.

Filter genes and codons

Codons

It may be useful to restrict codons in the analysis to those encoding certain amino acids. Stop codons are excluded by default from CUB calculations. Codons encoding a single amino acid (Met and Trp) do not factor into CUB calculations. Example: exclude Ala, Arg, and stop codons with --exclude-amino-acids Ala Arg STP.

Dynamic exclusion of amino acids can be useful in CUB calculations. For example, a query gene with 1 AAT and 1 AAC encoding Asn, or “synonymous relative frequencies” of 0.5 AAT and 0.5 AAC, has very little data to support comparison to the synonymous relative frequencies of a large number of Asn codons in a set of reference genes. A query with 1 AAT and 0 AAC, or synonymous relative frequencies of 1.0 AAT and 0.0 AAC, would be even more statistically insignificant. Reference-dependent CUB metrics, such as 𝛿, rely upon the ratio of synonymous relative codon frequencies in the query and reference, and so can be skewed for queries with small counts of various codons. --pansequence-min-amino-acids removes rarer amino acids across the dataset, setting a minimum number of codons in a minimum number of genes to retain the amino acid. For example, amino acids with <5 codons in >90% of genes will be excluded from the analysis with the arguments, --pansequence-min-amino-acids 5 0.9.

Codons for rarer amino acids within each gene or function query can be excluded from the CUB calculation with --sequence-min-amino-acids. For example, amino acids with <5 codons in a query will be excluded from the analysis with --sequence-min-amino-acids 5.

Gene length and codon count

Genes with fewer than a minimum number of codons can be ignored in the CUB analysis. --gene-min-codons sets the minimum number of codons required in a gene, and this filter can be applied before and/or after the removal of rarer codons. Applied before, --gene-min-codons filters genes by length; applied after, it filters genes by codons remaining after removing rarer codons. --min-codon-filter can take three possible arguments: length, remaining, or, by default when codons are removed, both, which applies the --gene-min-codons filter both before and after codon removal.

It may seem redundant for remaining and both to both be possibilities, but this is due to the possibility of dynamic amino acid exclusion using --pansequence-min-amino-acids. Amino acids are removed based on their frequency in a proportion of genes, so removing shorter genes by length before removing amino acids can affect which amino acids are dynamically excluded.

Get Options
Exclude genes shorter than 300 codons from queries --gene-min-codons 300
Exclude genes shorter than 300 codons from contributing to function queries --gene-min-codons 300 --function-sources
Exclude function queries with <300 codons --function-min-codons 300
Exclude stop codons and single-codon amino acids --exclude-amino-acids STP Met Trp
Exclude codons for amino acids with <5 codons in >90% of genes --pansequence-min-amino-acids 5 0.9
Replace codons for amino acids with <5 codons in the gene or function with NaN --sequence-min-amino-acids 5
Exclude queries with <300 codons involved in the CUB calculation --query-min-analyzed-codons 300

Function codon count

Functions with fewer than a minimum number of codons can be ignored in the CUB analysis using --function-min-codons. Function codon count filters occur after gene codon count filters: the set of genes contributing to function codon frequency can be restricted by applying --gene-min-codons.

Analyzed query codon count

Filters removing codons from a gene or function query reduce the codon count factoring into the CUB calculation. --query-min-analyzed-codons ignores queries in the CUB calculation that have fewer than a minimum number of codons remaining. For example, --query-min-analyzed-codons 300 ensures that after removing codons by --exclude-amino-acids, --pansequence-min-amino-acids, and/or --sequence-min-amino-acids, queries must have 300 codons involved in the CUB calculation.

Edit this file to update this information.

Command line interface

The following is the list of parameters and their descriptions in the latest version of anvi-get-codon-usage-bias.

The code that generates this web page ensures that this information is the latest available in 9-dev (eunice). Which means, in some cases the information in this section (generated automatically) might be more comprehensive or up-to-date compared to the descriptions above (written by humans).


Command line usage

anvi-get-codon-usage-bias [-h] [-c CONTIGS_DB] [-p PROFILE_DB] [-C COLLECTION_NAME] [-b BIN_NAME] [--gene-caller-ids GENE_CALLER_IDS [GENE_CALLER_IDS ...]] [-i FILE_PATH] [-e FILE_PATH] [-o FILE_PATH] [--metrics [{cai,delta} ...]] [--encodings-txt ENCODINGS_TXT] [--function-sources [FUNCTION_SOURCES ...]] [--function-accessions FUNCTION_ACCESSIONS [FUNCTION_ACCESSIONS ...]] [--function-names FUNCTION_NAMES [FUNCTION_NAMES ...]] [--select-functions-txt SELECT_FUNCTIONS_TXT] [--expect-functions] [--shared-function-sources] [--omnibias] [--select-reference-functions-txt SELECT_REFERENCE_FUNCTIONS_TXT] [--expect-reference-functions] [--reference-gene-caller-ids REFERENCE_GENE_CALLER_IDS [REFERENCE_GENE_CALLER_IDS ...]] [--gene-min-codons GENE_MIN_CODONS] [--function-min-codons FUNCTION_MIN_CODONS] [--exclude-amino-acids EXCLUDE_AMINO_ACIDS [EXCLUDE_AMINO_ACIDS ...]] [--include-amino-acids INCLUDE_AMINO_ACIDS [INCLUDE_AMINO_ACIDS ...]] [--sequence-min-amino-acids SEQUENCE_MIN_AMINO_ACIDS] [--pansequence-min-amino-acids PANSEQUENCE_MIN_AMINO_ACIDS PANSEQUENCE_MIN_AMINO_ACIDS] [--min-codon-filter {length,remaining,both}] [--query-min-analyzed-codons QUERY_MIN_ANALYZED_CODONS] [--ignore-start-codons] [--reference-exclude-amino-acid-count REFERENCE_EXCLUDE_AMINO_ACID_COUNT] [--reference-min-analyzed-codons REFERENCE_MIN_ANALYZED_CODONS] [--skip-checking-genome-hashes]

Parameters and their descriptions

SINGLE GENOME INPUTS Get CUB of "query" genes or functions in a single genome. A contigs database can be provided alone as an "external" genome. An "internal" genome (bin) also requires a profile database, collection name, and bin ID.
-c, --contigs-db CONTIGS_DB
Anvi'o contigs database generated by 'anvi-gen-contigs-database'
-p, --profile-db PROFILE_DB
Anvi'o profile database
-C, --collection-name COLLECTION_NAME
Collection name.
-b, --bin-id BIN_NAME
Bin name you are interested in.
--gene-caller-ids GENE_CALLER_IDS
Return CUB for genes with these IDs.
MULTIPLE GENOME INPUTS Get CUB from genes or functions in multiple genomes by providing internal and/or external genome files listing the genomes to analyze.
-i, --internal-genomes FILE_PATH
A five-column TAB-delimited flat text file. The header line must contain these columns: 'name', 'bin_id', 'collection_id', 'profile_db_path', 'contigs_db_path'. Each line should list a single entry, where 'name' can be any name to describe the anvi'o bin identified as 'bin_id' that is stored in a collection.
-e, --external-genomes FILE_PATH
A two-column TAB-delimited flat text file that lists anvi'o contigs databases. The first item in the header line should read 'name', and the second should read 'contigs_db_path'. Each line in the file should describe a single entry, where the first column is the name of the genome (or MAG), and the second column is the anvi'o contigs database generated for this genome.
OUTPUT
-o, --output-file FILE_PATH
This program writes one or more tab-delimited files of gene/function CUB statistics. All tables have gene/function row labels. 1.a. Single genome, single CUB metric, not omnibias mode: A table with one column of CUB data is written to the provided output file path. 1.b. Single genome, single CUB metric, omnibias mode: A table of gene/function x gene/function is written to the provided output file path. 2.a. Single genome, multiple CUB metrics, not omnibias mode: A table with a column of CUB data per metric is written to the provided output file path. 2.b. Single genome, multiple CUB metrics, omnibias mode: A table of gene/function x gene/function is written per reference-dependent CUB metric, and a single table with a column of CUB data per reference-independent metric is written to another file, with the provided output file path serving as a template for the new file paths. 3.a. Multiple genomes, single CUB metric, not omnibias mode: A table with one column of CUB data is written per genome, with the provided output file path serving as a template for the per-genome file paths. 3.b. Multiple genomes, single CUB metric, omnibias mode: A table of gene/function x gene/function is written per genome, with the provided output file path serving as a template for the per-genome file paths. 4.a. Multiple genomes, multiple CUB metrics, not omnibias mode: A table with a column of CUB data per metric is written per genome, with the provided output file path serving as a template for the per-genome file paths. 4.b. Multiple genomes, multiple CUB metrics, omnibias mode: A table of gene/function x gene/function is written per genome x CUB metric, and a table with a column of CUB data per reference-independent metric is written per genome, with the provided output file path serving as a template for the new file paths.
CUB_CALCULATION
--metrics METRICS
These are the metrics used in CUB calculations, with a separate calculation and a separate section of rows in the output table for each metric provided. When used as a flag, `--metrics` returns every possible metric. Some CUB metrics depend on definition of a reference codon composition, whereas others are reference-independent. 'cai' is the reference-dependent Codon Adaptation Index of Sharp and Li (1987). 'delta' is a reference-dependent metric of Ran and Higgs (2012, Eq. 6) that involves the overall codon composition of the genome in the comparison. Choices: cai delta
--encodings-txt ENCODINGS_TXT
Changes to the standard genetic code can be provided in this tab-delimited file of two columns. Each entry in the first column is a codon and each entry in the second column is the three-letter code for the decoded amino acid. For example, to recode the stop codon, TGA, as Trp, 'TGA' would be placed in the first column and 'Trp' in the same row of the second. Stop/termination codons are abbreviated "STP". This option affects per-amino acid and synonymous codon output (when using `--return-amino-acids` or `--synonymous`).
FUNCTION SELECTION Calculate CUB for functions rather than genes. The codon frequencies of genes annotated by a function are summed, treating functions as concatenations of genes, with longer genes contributing more than shorter genes to function codon usage. Alternative methods of combining gene codon frequencies, such as averaging genes, would not treat every gene equally. Averaging means that short genes have equal importance as long genes in the CUB of a function, which could imply that short genes are rate-limiting and therefore need to be favored for translation.
--function-sources FUNCTION_SOURCES
Return CUB for functions annotated by these sources, e.g., 'KOfam', 'KEGG_BRITE', 'COG20_FUNCTION'. If `--function-sources` is used as a flag without any arguments, then every source will be considered.
--function-accessions FUNCTION_ACCESSIONS
Return CUB for functions with these accessions from the source provided in `--function-sources`. To get accessions from multiple sources, instead use `--select-functions-txt`.
--function-names FUNCTION_NAMES
Return CUB for functions with these names from the source provided in `--function-sources`. To get function names from multiple sources, instead use `--select-functions-txt`.
--select-functions-txt SELECT_FUNCTIONS_TXT
Functions to select can be listed in this tab-delimited file of three columns. The first column should contain function annotation sources, the second column accessions, and the third function names. An entry in the source column is required in every row, and either an accession or name, or both, should also be in a row. Column names should not be provided.
--expect-functions
By default, functions provided by `--function-accessions`, `--function-names`, and `--select-functions-txt` need not be annotated in the input genomes. With this flag, an error will be raised if any of the functions are not present.
--shared-function-sources
When analyzing multiple genomes, exclude function annotation sources that were not run on every genome.
REFERENCE Certain CUB metrics rely on definition of a reference codon composition. Often, a set of housekeeping genes including ribosomal proteins is used as the reference. Reference codon frequencies are the sums of the reference gene codon frequencies (long genes contribute more to reference codon frequencies than short genes). By default, reference genes are ribosomal proteins annotated by KEGG KOfams/BRITE, requiring input contigs databases to have been annotated by `anvi-run-kegg-kofams`. Specifically, the genes must be classified within BRITE as 'Ribosome>>>Ribosomal proteins'.
--omnibias
Use every gene or function as a separate reference rather than defining a set of reference genes or functions. The resulting table of gene x gene (or function x function) CUB values is like a distance matrix of the similarity of gene codon compositions.
--select-reference-functions-txt SELECT_REFERENCE_FUNCTIONS_TXT
Rather than using the default reference, selected reference functions can be listed in a headerless, tab-delimited file of three columns. Each row is a selected annotation. The first column must contain function annotation sources, the second column should contain function accessions, and the third columns should contain function names. Functions can be selected by function name or accession, so a value can be provided for one or the other. In summary, every row requires a source in the first column and either an accession or name in the second and third columns, respectively.
--expect-reference-functions
By default, reference functions provided by `--select-reference-functions-txt` do not all need to be annotated in the input genomes. For example, if two KEGG BRITE categories are used as references -- 'Ribosome>>>Ribosomal proteins>>>Bacteria' and 'Transcription machinery>>>Prokaryotic type>>>Bacterial type>>>RNA polymerase' -- and genes are found to be annotated by only one of the categories, then these genes will be used as the reference. If this flag is used, then an error would instead be raised since one of the reference functions is not represented in the genome.
--reference-gene-caller-ids REFERENCE_GENE_CALLER_IDS
Include specific genes in the reference gene set, as given by their gene caller IDs in the contigs database. This option can only be used with a single genome -- a single contigs database, internal genome, or external genome.
FILTER GENES, FUNCTIONS, CODONS Genes/functions can be filtered by the number of codons they contain, e.g., ignore genes shorter than 300 codons. Codons can be selected a priori, e.g., ignore Ala codons, or rarer codons can be excluded, e.g., ignore amino acids that are decoded by ≀3 codons in ≄90%% of genes. Filters can improve the statistical utility of CUB data. These filters do not apply to the reference gene set.
--gene-min-codons GENE_MIN_CODONS
Set the minimum number of codons required in a gene forming a gene/function queries. When functions are returned rather than genes, this filter is applied to genes before grouping them as functions. Default: 0
--function-min-codons FUNCTION_MIN_CODONS
Set the minimum number of codons required in a function "query". Genes with fewer than `--gene-min-codons` are first removed, and then functional groups of the remaining genes with fewer than `--function-min-codons` are removed. This filter only applies when returning function queries. Default: 0
--exclude-amino-acids EXCLUDE_AMINO_ACIDS
Remove codons that decode the given amino acids (use three-letter codes, e.g., Ala). Amino acids encoded by a single codon (Met and Trp) are excluded perforce from CUB calculations and do not have to be made explicit here. Importantly, to continue to exclude stop codons, as per the default, make sure to include "STP" in the argument: exclusion of Ala and stop codons is achieved with "Ala STP". Default: ['STP']
--include-amino-acids INCLUDE_AMINO_ACIDS
This is the complement of `--exclude-amino-acids`. Only codons for the given amino acids are analyzed.
--sequence-min-amino-acids SEQUENCE_MIN_AMINO_ACIDS
Remove codons for amino acids (and STP) that are less numerous than the given argument. For example, if the argument is 5, and a gene or function query has 4 codons encoding Asn, 2 AAT and 2 AAC, then Asn will be disregarded in the calculation of CUB for this query. Default: 0
--pansequence-min-amino-acids PANSEQUENCE_MIN_AMINO_ACIDS
The first value of the argument is a positive integer representing a minimum number of codons encoding an amino acid -- 'min_amino_acids' -- and the second is a number between 0 and 1 representing a fraction of genes -- 'min_gene_fraction'. Remove codons for amino acids (and STP) that are less numerous than 'min_amino_acids' in a 'min_gene_fraction' of genes. For example, if 'min_amino_acids' is 5 and 'min_gene_fraction' is 0.9, then if there are fewer than 5 codons for an amino acid/STP in ≄90% of genes, the amino acid's codons do not factor into the calculation of CUB for any query. Default: [0, 1.0]
--min-codon-filter MIN_CODON_FILTER
This argument arises from the ambiguity of filters that remove genes and functions by number of codons (`--gene-min-codons` and `--function-min-codons`) in relation to the filters that drop codons (`--exclude/include-amino-acids` and `--exclude-amino-acid-count/fraction`). Genes (and functions) can be filtered by their full length, e.g., genes shorter than 300 codons are ignored. They can also be filtered by the number of codons remaining after dropping codons. The codon length filter followed by dropping codons can result in genes and functions with fewer codons than the original codon threshold -- thus the option of both "length" and "remaining" filters to ensure that total codon frequencies always meet the minimum codon threshold. "both" is needed as an option in addition to "remaining" so dynamic codon filtering by `--exclude-amino-acid-count/fraction` operates on genes that passed the first length filter. Choices: length remaining both Default: both
--query-min-analyzed-codons QUERY_MIN_ANALYZED_CODONS
Only allow CUB to calculated for a query if it has at least this number of synonymous codons that will be analyzed. For reference-dependent CUB metrics, analyzed codons are those with reference compositions. Default: 100
--ignore-start-codons
Ignore start codons in the analysis. Besides ATG, GTG and TTG are notable minority start codons in bacteria and archaea. With start codons removed, frequencies only represent elongation codons. This makes codon usage bias calculations more accurate, because initiation GTG and TTG, like ATG, encode fMet in bacteria and Met in archaea and eukaryotes, but anvi'o treats them like elongation codons encoding Val and Leu, respectively, in the standard genetic code. ATG does not contribute to codon usage bias given the standard genetic code, because it lacks synonymous codons, being the only Met codon. Note that `--ignore-start-codons` removes start codons from genes in the earliest steps of the analysis, which influences `--gene-min-codons`: the number of codons in a gene never counts the start codon.
FILTER REFERENCE Confidence in the reference codon composition can be increased by setting minimum frequency requirements for the set of reference genes or codons for any individual amino acid to be retained. These arguments should not be used with `--omnibias`. Queries and references are the same in omnibias mode, so references will be filtered by query options including `--exclude-amino-acid-count`, `--exclude-amino-acid-fraction`, and `--query-min-analyzed-codons`.
--reference-exclude-amino-acid-count REFERENCE_EXCLUDE_AMINO_ACID_COUNT
Exclude codons for amino acids with fewer than this many codons in the set of reference genes. Default: 10
--reference-min-analyzed-codons REFERENCE_MIN_ANALYZED_CODONS
Only allow CUB to be calculated for a genome if the set of reference genes contains at least this many codons. This filter applies after excluding codons for individual amino acids using `--reference-exclude-amino-acid-count`. Default: 100
--skip-checking-genome-hashes
Use this flag if you would like anvi'o to skip checking genome hashes. This is only relevant if you may have genomes in your internal or external genomes files that have identical sequences with different names AND if you are OK with it. You may be OK with it, for instance, if you are using `anvi-dereplicate-genomes` program to dereplicate genomes desribed in multiple collections in an anvi'o profile database that may be describing the same genome multiple times (see https://github.com/merenlab/anvio/issues/1397 for a case).

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.