| ## EMBOSS: cai

# Program cai

## Function

CAI codon adaptation index

## Description

cai calculates the Codon Adaptation Index. This is a simple, effective measure of synonymous codon usage bias.

The index uses a reference set of highly expressed genes from a species to assess the relative merits of each codon, and a score for a gene is calculated from the frequency of use of all codons in that gene. The index assesses the extent to which selection has been effective in moulding the pattern of codon usage. In that respect it is useful for predicting the level of expression of a gene, for assessing the adaptation of viral genes to their hosts, and for making comparisons of codon usage in different organisms. The index may also give an approximate indication of the likely success of heterologous gene expression.

## Usage

Here is a sample session with cai:

    % cai embl:AB009602
    CAI codon adaptation index
    Codon usage file [Eyeastcai.cut]:
    Output file [ab009602.cai]:

## Command line arguments

       Mandatory qualifiers:
      [-seqall]            seqall     Sequence database USA
       -cfile              codon      Codon usage file
      [-outfile]           outfile    Output file name

       Optional qualifiers: (none)
       Advanced qualifiers: (none)
       General qualifiers:
      -help                bool       report command line options. More
                                      information on associated and general
                                      qualifiers can be found with -help -verbose

Mandatory qualifiers | Allowed values | Default
--- | --- | ---
[-seqall] (Parameter 1) | Sequence database USA | Readable sequence(s) | Required
-cfile | Codon usage file | Codon usage file in EMBOSS data path | Eyeastcai.cut
[-outfile] (Parameter 2) | Output file name | Output file | <sequence>.cai
Optional qualifiers | Allowed values | Default
(none)
Advanced qualifiers | Allowed values | Default
(none)

## Input file format

cai reads a nucleic acid sequence of a gene.

## Output file format

cai writes the Codon Adaptation Index to the output file.

The output from the above example follows:

    CAI = 0.188

## Data files

cai reads a reference codon usage table prepared from a set of genes which are known to be highly expressed.

The default codon usage table 'Eyeastcai.cut' was prepared from a set of S. pombe genes by Peter Rice.

You should prepare your own codon usage table for your organism of interest.

EMBOSS data files are distributed with the application and stored in the standard EMBOSS data directory, which is defined by the EMBOSS environment variable EMBOSS_DATA.

To see the available EMBOSS data files, run:

    % embossdata -showall

To fetch one of the data files (for example 'Exxx.dat') into your current directory for you to inspect or modify, run:

    % embossdata -fetch -file Exxx.dat

Users can provide their own data files in their own directories. Project specific files can be put in the current directory, or for tidier directory listings in a subdirectory called ".embossdata". Files for all EMBOSS runs can be put in the user's home directory, or again in a subdirectory called ".embossdata".

The directories are searched in the following order:

- . (your current directory)
- .embossdata (under your current directory)
- ~/ (your home directory)
- ~/.embossdata

## Notes

None.

## References

Sharp PM., Li W-H. "The codon adaptation index - a measure of directional synonymous codon usage bias, and its potential applications." Nucleic Acids Research 1987 vol 15, pp 1281-1295.

## Warnings

None.

## Diagnostic Error Messages

None.

## Exit status

It always exits with status 0.

## Known bugs

None.

## See also

Program name | Description
--- | ---
chips | Codon usage statistics
codcmp | Codon usage table comparison
cusp | Create a codon usage table
syco | Synonymous codon usage Gribskov statistic plot

## Author(s)

This application was written by Alan Bleasby (ableasby@hgmp.mrc.ac.uk)

## History

Written (March 2001) - Alan Bleasby.

## Target users

This program is intended to be used by everyone and everything, from naive users to embedded scripts.

## Comments