skbio.sequence.transition.jc69#

skbio.sequence.transition.jc69(d, seqtype='DNA')[source]#

Calculate the JC69 transition probability matrix for a given distance.

Added in version 0.7.4.

The Jukes-Cantor 1969 (JC69) model assumes equal nucleotide frequencies and equal substitution rates between all nucleotides.

The transition probability between nucleotide states for sequences separated by evolutionary distance \(d\) (expected substitutions per site) is given by:

\[\begin{split}P_{ij} = \begin{cases} \frac{1}{4} + \frac{3}{4} e^{-\frac{4d}{3}} & i = j \\ \frac{1}{4} - \frac{1}{4} e^{-\frac{4d}{3}} & i \neq j \end{cases}\end{split}\]

where \(i, j \in \{A, C, G, T/U\}\), and \(i\) and \(j\) denote ancestral and descendant states, respectively.

Parameters:
dfloat

Evolutionary distance (expected substitutions per site) between sequences.

seqtypestr

Sequence type: “DNA” (default) or “RNA”. Used to label matrix states as nucleotides (A, C, G, T/U).

Returns:
SubstitutionMatrix

Transition probability matrix. Rows correspond to ancestral states, columns correspond to descendant states.

Notes

The Jukes-Cantor 1969 (JC69) model was originally described in [1].

It is a continuous-time Markov chain model that assumes equal base frequencies and equal substitution rates between all nucleotides.

References

[1]

Jukes, T. H., & Cantor, C. R. (1969). Evolution of protein molecules. Mammalian Protein Metabolism, 3(21), 132.