bpp-seq3
3.0.0
|
Utilitary functions for codon sites. More...
#include <Bpp/Seq/CodonSiteTools.h>
Public Member Functions | |
CodonSiteTools () | |
virtual | ~CodonSiteTools () |
Static Public Member Functions | |
static bool | hasGapOrStop (const Site &site, const GeneticCode &gCode) |
Method to know if a codon site contains gap(s) or stop codons. More... | |
static bool | hasStop (const Site &site, const GeneticCode &gCode) |
Method to know if a codon site contains stop codon or not. More... | |
static bool | isMonoSitePolymorphic (const Site &site) |
Method to know if a polymorphic codon site is polymorphic at only one site. More... | |
static bool | isSynonymousPolymorphic (const Site &site, const GeneticCode &gCode) |
Method to know if polymorphism at a codon site is synonymous. More... | |
static std::unique_ptr< Site > | generateCodonSiteWithoutRareVariant (const Site &site, const GeneticCode &gCode, double freqmin) |
generate a codon site without rare variants More... | |
static size_t | numberOfDifferences (int i, int j, const CodonAlphabet &ca) |
Compute the number of differences between two codons. More... | |
static double | numberOfSynonymousDifferences (int i, int j, const GeneticCode &gCode, bool minchange=false) |
Compute the number of synonymous differences between two codons. More... | |
static double | piSynonymous (const Site &site, const GeneticCode &gCode, bool minchange=false) |
Compute the synonymous pi per codon site. More... | |
static double | piNonSynonymous (const Site &site, const GeneticCode &gCode, bool minchange=false) |
Compute the non-synonymous pi per codon site. More... | |
static double | numberOfSynonymousPositions (int i, const GeneticCode &gCode, double ratio=1.0) |
Return the number of synonymous positions of a codon. More... | |
static double | meanNumberOfSynonymousPositions (const Site &site, const GeneticCode &gCode, double ratio=1) |
Return the mean number of synonymous positions per codon site. More... | |
static size_t | numberOfSubstitutions (const Site &site, const GeneticCode &gCode, double freqmin=0.) |
Return the number of substitutions per codon site. More... | |
static size_t | numberOfNonSynonymousSubstitutions (const Site &site, const GeneticCode &gCode, double freqmin=0.) |
Return the number of Non Synonymous substitutions per codon site. More... | |
static std::vector< size_t > | fixedDifferences (const Site &siteIn, const Site &siteOut, int i, int j, const GeneticCode &gCode) |
Return a vector with the number of fixed synonymous and non-synonymous differences per codon site. More... | |
static bool | isFourFoldDegenerated (const Site &site, const GeneticCode &gCode) |
static bool | hasGap (const IntSymbolListInterface &site) |
static bool | hasGap (const ProbabilisticSymbolListInterface &site) |
static bool | hasGap (const CruxSymbolListInterface &site) |
static bool | hasUnresolved (const IntSymbolListInterface &site) |
static bool | isGapOnly (const IntSymbolListInterface &site) |
static bool | isGapOnly (const ProbabilisticSymbolListInterface &site) |
static bool | isGapOnly (const CruxSymbolListInterface &site) |
static size_t | numberOfGaps (const IntSymbolListInterface &site) |
static size_t | numberOfGaps (const ProbabilisticSymbolListInterface &site) |
static size_t | numberOfGaps (const CruxSymbolListInterface &site) |
static bool | isGapOrUnresolvedOnly (const IntSymbolListInterface &site) |
static bool | isGapOrUnresolvedOnly (const ProbabilisticSymbolListInterface &site) |
static bool | isGapOrUnresolvedOnly (const CruxSymbolListInterface &site) |
static size_t | numberOfUnresolved (const IntSymbolListInterface &site) |
static size_t | numberOfUnresolved (const ProbabilisticSymbolListInterface &site) |
static size_t | numberOfUnresolved (const CruxSymbolListInterface &site) |
static bool | hasUnknown (const IntSymbolListInterface &site) |
static bool | hasUnknown (const ProbabilisticSymbolListInterface &site) |
static bool | hasUnknown (const CruxSymbolListInterface &site) |
static bool | isComplete (const IntSymbolListInterface &site) |
static bool | isComplete (const ProbabilisticSymbolListInterface &site) |
static bool | isComplete (const CruxSymbolListInterface &site) |
static bool | isConstant (const IntSymbolListInterface &site, bool ignoreUnknown=false, bool unresolvedRaisesException=true) |
Tell if a site is constant, that is displaying the same state in all sequences that do not present a gap. More... | |
static bool | isConstant (const ProbabilisticSymbolListInterface &site, bool unresolvedRaisesException=true) |
static bool | isConstant (const CruxSymbolListInterface &site, bool ignoreUnknown=false, bool unresolvedRaisesException=true) |
static bool | areSymbolListsIdentical (const IntSymbolListInterface &list1, const IntSymbolListInterface &list2) |
static bool | areSymbolListsIdentical (const ProbabilisticSymbolListInterface &list1, const ProbabilisticSymbolListInterface &list2) |
static bool | areSymbolListsIdentical (const CruxSymbolListInterface &l1, const CruxSymbolListInterface &l2) |
template<class count_type > | |
static void | getCounts (const IntSymbolListInterface &list, std::map< int, count_type > &counts) |
Count all states in the list. More... | |
static void | getCounts (const ProbabilisticSymbolListInterface &list, std::map< int, double_t > &counts) |
Sum all states in the list. More... | |
static void | getCounts (const CruxSymbolListInterface &list, std::map< int, double > &counts, bool resolveUnknowns=false) |
Count all states in the list, optionally resolving unknown characters. More... | |
template<class count_type > | |
static void | getCounts (const IntSymbolListInterface &list1, const IntSymbolListInterface &list2, std::map< int, std::map< int, count_type >> &counts) |
Count all pair of states for two lists of the same size. More... | |
static void | getCounts (const ProbabilisticSymbolListInterface &list1, const ProbabilisticSymbolListInterface &list2, std::map< int, std::map< int, double >> &counts) |
Sum along the lists the joined probabilities for all pair of states for two lists of the same size. More... | |
static void | getCounts (const CruxSymbolListInterface &list1, const CruxSymbolListInterface &list2, std::map< int, std::map< int, double >> &counts, bool resolveUnknowns) |
Count all pairs of states for two lists of the same size, optionally resolving unknown characters. More... | |
static void | getCountsResolveUnknowns (const IntSymbolListInterface &list, std::map< int, double > &counts) |
Count all states in the list normalizing unknown characters. More... | |
static void | getCountsResolveUnknowns (const ProbabilisticSymbolListInterface &list, std::map< int, double > &counts) |
Count all states in the list normalizing unknown characters. More... | |
static void | getCountsResolveUnknowns (const IntSymbolListInterface &list1, const IntSymbolListInterface &list2, std::map< int, std::map< int, double >> &counts) |
Count all pairs of states for two lists of the same size resolving unknown characters. More... | |
static void | getCountsResolveUnknowns (const ProbabilisticSymbolListInterface &list1, const ProbabilisticSymbolListInterface &list2, std::map< int, std::map< int, double >> &counts) |
Count all pairs of states for two lists of the same size resolving unknown characters. More... | |
static void | getFrequencies (const CruxSymbolListInterface &list, std::map< int, double > &frequencies, bool resolveUnknowns=false) |
Get all states frequencies in the list. More... | |
static void | getFrequencies (const CruxSymbolListInterface &list1, const CruxSymbolListInterface &list2, std::map< int, std::map< int, double >> &frequencies, bool resolveUnknowns=false) |
Get all state pairs frequencies for two lists of the same size. More... | |
static double | getGCContent (const IntSymbolListInterface &list, bool ignoreUnresolved=true, bool ignoreGap=true) |
Get the GC content of a symbol list. More... | |
static double | getGCContent (const ProbabilisticSymbolListInterface &list, bool ignoreUnresolved=true, bool ignoreGap=true) |
static double | getGCContent (const CruxSymbolListInterface &list, bool ignoreUnresolved=true, bool ignoreGap=true) |
static size_t | getNumberOfDistinctPositions (const IntSymbolListInterface &l1, const IntSymbolListInterface &l2) |
Get the number of distinct positions. More... | |
static size_t | getNumberOfDistinctPositions (const ProbabilisticSymbolListInterface &l1, const ProbabilisticSymbolListInterface &l2) |
static size_t | getNumberOfDistinctPositions (const CruxSymbolListInterface &l1, const CruxSymbolListInterface &l2) |
static size_t | getNumberOfPositionsWithoutGap (const IntSymbolListInterface &l1, const IntSymbolListInterface &l2) |
Get the number of positions without gap (or without null column). More... | |
static size_t | getNumberOfPositionsWithoutGap (const ProbabilisticSymbolListInterface &l1, const ProbabilisticSymbolListInterface &l2) |
static size_t | getNumberOfPositionsWithoutGap (const CruxSymbolListInterface &l1, const CruxSymbolListInterface &l2) |
static void | changeGapsToUnknownCharacters (IntSymbolListInterface &l) |
Change all gap elements to unknown characters (or columns of 1). More... | |
static void | changeGapsToUnknownCharacters (ProbabilisticSymbolListInterface &l) |
static void | changeGapsToUnknownCharacters (CruxSymbolListInterface &l) |
static void | changeUnresolvedCharactersToGaps (IntSymbolListInterface &l) |
Change all unknown characters to gap elements (or columns of 0). More... | |
static void | changeUnresolvedCharactersToGaps (ProbabilisticSymbolListInterface &l) |
static void | changeUnresolvedCharactersToGaps (CruxSymbolListInterface &l) |
static double | variabilityShannon (const CruxSymbolListInterface &list, bool resolveUnknowns) |
Compute the Shannon entropy index of a SymbolList. More... | |
static double | variabilityFactorial (const IntSymbolListInterface &list) |
Compute the factorial diversity index of a site. More... | |
static double | mutualInformation (const CruxSymbolListInterface &list1, const CruxSymbolListInterface &list2, bool resolveUnknowns) |
Compute the mutual information between two lists. More... | |
static double | entropy (const CruxSymbolListInterface &list, bool resolveUnknowns) |
Compute the entropy of a site. This is an alias of method variabilityShannon. More... | |
static double | jointEntropy (const CruxSymbolListInterface &list1, const CruxSymbolListInterface &list2, bool resolveUnknowns) |
Compute the joint entropy between two lists. More... | |
static double | heterozygosity (const CruxSymbolListInterface &list) |
Compute the heterozygosity index of a list. More... | |
static size_t | getNumberOfDistinctCharacters (const IntSymbolListInterface &list) |
Give the number of distinct characters at a list. More... | |
static size_t | getMajorAlleleFrequency (const IntSymbolListInterface &list) |
return the number of occurrences of the most common allele. More... | |
static int | getMajorAllele (const CruxSymbolListInterface &list) |
return the state corresponding to the most common allele. More... | |
static size_t | getMinorAlleleFrequency (const IntSymbolListInterface &list) |
return the number of occurrences of the least common allele. More... | |
static int | getMinorAllele (const CruxSymbolListInterface &list) |
return the state corresponding to the least common allele. More... | |
static bool | hasSingleton (const IntSymbolListInterface &list) |
Tell if a list has singletons. More... | |
static bool | isParsimonyInformativeSite (const IntSymbolListInterface &site) |
Tell if a site is a parsimony informative site. More... | |
static bool | isTriplet (const IntSymbolListInterface &list) |
Tell if a list has more than 2 distinct characters. More... | |
static bool | isDoubleton (const IntSymbolListInterface &list) |
Tell if a list has exactly 2 distinct characters. More... | |
Utilitary functions for codon sites.
Definition at line 24 of file CodonSiteTools.h.
|
inline |
Definition at line 28 of file CodonSiteTools.h.
|
inlinevirtual |
Definition at line 29 of file CodonSiteTools.h.
|
inlinestaticinherited |
Definition at line 239 of file SymbolListTools.h.
References bpp::SymbolListTools::areSymbolListsIdentical().
|
staticinherited |
list1 | The first site. |
list2 | The second site. |
Definition at line 216 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::areSymbolListsIdentical().
|
staticinherited |
Definition at line 236 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 709 of file SymbolListTools.h.
References bpp::SymbolListTools::changeGapsToUnknownCharacters().
|
staticinherited |
Change all gap elements to unknown characters (or columns of 1).
l | The input list of characters. |
Definition at line 501 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::changeGapsToUnknownCharacters().
|
staticinherited |
Definition at line 614 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 736 of file SymbolListTools.h.
References bpp::SymbolListTools::changeUnresolvedCharactersToGaps().
|
staticinherited |
Change all unknown characters to gap elements (or columns of 0).
l | The input list of characters. |
Definition at line 511 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::changeUnresolvedCharactersToGaps().
|
staticinherited |
Definition at line 623 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Compute the entropy of a site. This is an alias of method variabilityShannon.
where is the frequency of state .
list | A list. |
resolveUnknowns | Tell is unknown characters must be resolved. |
Definition at line 817 of file SymbolListTools.h.
References bpp::SymbolListTools::variabilityShannon().
|
static |
Return a vector with the number of fixed synonymous and non-synonymous differences per codon site.
Compute the number of synonymous and non-synonymous differences between the consensus codon of SiteIn (i) and SiteOut (j), which are fixed within each alignment. Example:
Here, the first position is non-synonymous different and fixed, the third position is synonymous different but not fixed (polymorphic in SiteIn). The return vector is thus [0,1]. In case of complex codon, the path that gives the minimum number of non-synonymous changes is chosen. The argument minchange=true is sent to numberOfSynonymousDifferences used in this method. Otherwise, a non-integer number could be return.
Rare variants (<= freqmin) can be excluded.
siteIn | a Site |
siteOut | a Site |
i | an integer |
j | an integer |
gCode | a GeneticCode |
Definition at line 661 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::Alphabet::equals(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::GeneticCode::getCodonAlphabet(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), bpp::AbstractTemplateSymbolList< T >::size(), and bpp::GeneticCode::sourceAlphabet().
|
static |
generate a codon site without rare variants
Rare variants are replaced by the most frequent allele. This method is used to exclude rare variants in some analyses as in McDonald-Kreitman Test (McDonald & Kreitman, 1991, Nature 351 pp652-654). For an application, see for example (Fay et al. 2001, Genetics 158 pp 1227-1234).
site | a Site |
gCode | The genetic code according to which stop codons are specified. |
freqmin | a double, allele in frequency strictly lower than freqmin are replaced |
Definition at line 129 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::SymbolListTools::getFrequencies(), bpp::AbstractTemplateSymbolList< T >::getValue(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), bpp::GeneticCode::isStop(), and bpp::AbstractTemplateSymbolList< T >::size().
Referenced by numberOfSubstitutions().
|
inlinestaticinherited |
Count all states in the list, optionally resolving unknown characters.
For instance, in DNA, N will be counted as A=1/4,T=1/4,C=1/4,G=1/4.
list | The list. |
counts | The output map to store the counts (existing ocunts will be incremented). |
resolveUnknowns | Tell is unknown characters must be resolved. |
Definition at line 360 of file SymbolListTools.h.
References bpp::SymbolListTools::getCounts(), and bpp::SymbolListTools::getCountsResolveUnknowns().
|
inlinestaticinherited |
Count all pairs of states for two lists of the same size, optionally resolving unknown characters.
For instance, in DNA, N will be counted as A=1/4,T=1/4,C=1/4,G=1/4.
NB: The two lists do node need to share the same alphabet! The states of the first list will be used as the first index in the output, and the ones from the second list as the second index.
list1 | The first list. |
list2 | The second list. |
counts | The output map to store the counts (existing ocunts will be incremented). |
resolveUnknowns | Tell is unknown characters must be resolved. For instance, in DNA, N will be counted as A=1/4,T=1/4,C=1/4,G=1/4. |
Definition at line 514 of file SymbolListTools.h.
References bpp::SymbolListTools::getCounts(), and bpp::SymbolListTools::getCountsResolveUnknowns().
|
inlinestaticinherited |
Count all states in the list.
list | The list. |
counts | The output map to store the counts (existing counts will be incremented). |
Definition at line 265 of file SymbolListTools.h.
References bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::getCounts(), bpp::SequenceContainerTools::getFrequencies(), isSynonymousPolymorphic(), and numberOfNonSynonymousSubstitutions().
|
inlinestaticinherited |
Count all pair of states for two lists of the same size.
NB: The two lists do node need to share the same alphabet! The states of the first list will be used as the first index in the output, and the ones from the second list as the second index.
list1 | The first list. |
list2 | The second list. |
counts | The output map to store the counts (existing counts will be incremented). |
Definition at line 412 of file SymbolListTools.h.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Sum all states in the list.
list | The list. |
counts | The output map to store the sum for all states (existing counts will be summed). |
Definition at line 282 of file SymbolListTools.h.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Sum along the lists the joined probabilities for all pair of states for two lists of the same size.
NB: The two lists do node need to share the same alphabet! The states of the first list will be used as the first index in the output, and the ones from the second list as the second index.
list1 | The first list. |
list2 | The second list. |
counts | The output map to store the counts (existing counts will be summed). |
Definition at line 437 of file SymbolListTools.h.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Count all states in the list normalizing unknown characters.
For instance, (1,1,1,1) will be counted as (1/4,1/4,1/4,1/4).
list | The list. |
counts | The output map to store the counts (existing ocunts will be incremented). |
Definition at line 306 of file SymbolListTools.h.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::getCounts().
|
staticinherited |
Count all pairs of states for two lists of the same size resolving unknown characters.
For instance, (1,1,1,1) will be counted as (1/4,1/4,1/4,1/4).
NB: The two lists do node need to share the same alphabet! The states of the first list will be used as the first index in the output, and the ones from the second list as the second index.
list1 | The first list. |
list2 | The second list. |
counts | The output map to store the counts (existing ocunts will be incremented). |
Definition at line 357 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Count all states in the list normalizing unknown characters.
For instance, (1,1,1,1) will be counted as (1/4,1/4,1/4,1/4).
list | The list. |
counts | The output map to store the counts (existing ocunts will be incremented). |
Definition at line 331 of file SymbolListTools.h.
References bpp::CruxSymbolListInterface::size(), and bpp::VectorTools::sum().
|
staticinherited |
Count all pairs of states for two lists of the same size resolving unknown characters.
For instance, (1,1,1,1) will be counted as (1/4,1/4,1/4,1/4).
NB: The two lists do node need to share the same alphabet! The states of the first list will be used as the first index in the output, and the ones from the second list as the second index.
list1 | The first list. |
list2 | The second list. |
counts | The output map to store the counts (existing ocunts will be incremented). |
Definition at line 522 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
Get all states frequencies in the list.
list | The list. |
resolveUnknowns | Tell is unknown characters must be resolved. For instance, in DNA, N will be counted as A=1/4,T=1/4,C=1/4,G=1/4. |
frequencies | The output map with all states and corresponding frequencies. Existing frequencies will be erased if any. |
Definition at line 380 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
Referenced by generateCodonSiteWithoutRareVariant(), bpp::SiteContainerTools::getConsensus(), meanNumberOfSynonymousPositions(), piNonSynonymous(), piSynonymous(), and bpp::SiteContainerTools::removeGapSites().
|
staticinherited |
Get all state pairs frequencies for two lists of the same size.
list1 | The first list. |
list2 | The second list. |
resolveUnknowns | Tell is unknown characters must be resolved. For instance, in DNA, N will be counted as A=1/4,T=1/4,C=1/4,G=1/4. For ProbabilisticSymbolList, (1,1,1,1) states will be counted as (1/4,1/4,1/4,1/4). |
frequencies | The output map with all state pairs and corresponding frequencies. Existing frequencies will be erased if any. |
Definition at line 396 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 609 of file SymbolListTools.h.
References bpp::SymbolListTools::getGCContent().
|
staticinherited |
Get the GC content of a symbol list.
list | The list. |
ignoreUnresolved | Do not count unresolved states (or columns that sum > 1). Otherwise, weight by each state probability in case of ambiguity (e.g. the R state counts for 0.5) (or columns are normalized). |
ignoreGap | Do not count gaps (or null columns) in total |
AlphabetException | If the list is not made of nucleotide states. |
Definition at line 415 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), bpp::TemplateCoreSymbolListInterface< T >::getValue(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::getGCContent().
|
staticinherited |
Definition at line 544 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), bpp::TemplateCoreSymbolListInterface< T >::getValue(), and bpp::CruxSymbolListInterface::size().
|
staticinherited |
return the state corresponding to the most common allele.
list | A list |
Definition at line 817 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
return the number of occurrences of the most common allele.
list | A list |
Definition at line 795 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
return the state corresponding to the least common allele.
list | A list |
Definition at line 866 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
return the number of occurrences of the least common allele.
list | A list |
Definition at line 844 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
Give the number of distinct characters at a list.
list | A list |
Definition at line 774 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
Referenced by numberOfSubstitutions().
|
inlinestaticinherited |
Definition at line 646 of file SymbolListTools.h.
References bpp::SymbolListTools::getNumberOfDistinctPositions().
|
staticinherited |
Get the number of distinct positions.
The comparison in achieved from position 0 to the minimum size of the two vectors.
l1 | SymbolList 1. |
l2 | SymbolList 2. |
AlphabetMismatchException | if the two lists have not the same alphabet type. |
Definition at line 469 of file SymbolListTools.cpp.
References count(), bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::getNumberOfDistinctPositions().
|
staticinherited |
Definition at line 581 of file SymbolListTools.cpp.
References count(), bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 682 of file SymbolListTools.h.
References bpp::SymbolListTools::getNumberOfPositionsWithoutGap().
|
staticinherited |
Get the number of positions without gap (or without null column).
The comparison in achieved from position 0 to the minimum size of the two vectors.
l1 | SymbolList 1. |
l2 | SymbolList 2. |
AlphabetMismatchException | if the two lists have not the same alphabet type. |
Definition at line 485 of file SymbolListTools.cpp.
References count(), bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::getNumberOfPositionsWithoutGap().
|
staticinherited |
Definition at line 598 of file SymbolListTools.cpp.
References count(), bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 36 of file SymbolListTools.h.
References bpp::SymbolListTools::hasGap().
|
staticinherited |
site | A site. |
Definition at line 22 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SiteContainerTools::changeGapsToUnknownCharacters(), bpp::SiteContainerTools::getSitesWithoutGaps(), bpp::SymbolListTools::hasGap(), bpp::NoGapTemplateSiteContainerIterator< SiteType, SequenceType, HashType >::nextSiteWithoutGapPosition(), numberOfNonSynonymousSubstitutions(), numberOfSubstitutions(), and bpp::NoGapTemplateSiteContainerIterator< SiteType, SequenceType, HashType >::previousSiteWithoutGapPosition().
|
staticinherited |
Definition at line 33 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
static |
Method to know if a codon site contains gap(s) or stop codons.
site | a Site |
gCode | The genetic code according to which stop codons are specified. |
Definition at line 26 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::AlphabetTools::isCodonAlphabet(), and bpp::AbstractTemplateSymbolList< T >::size().
|
staticinherited |
Tell if a list has singletons.
list | A list. |
Definition at line 892 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
static |
Method to know if a codon site contains stop codon or not.
site | a Site |
gCode | The genetic code according to which stop codons are specified. |
Definition at line 41 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::AlphabetTools::isCodonAlphabet(), bpp::GeneticCode::isStop(), and bpp::AbstractTemplateSymbolList< T >::size().
Referenced by bpp::SiteContainerTools::getSitesWithoutStopCodon(), and bpp::SiteContainerTools::removeSitesWithStopCodon().
|
inlinestaticinherited |
Definition at line 152 of file SymbolListTools.h.
References bpp::SymbolListTools::hasUnknown().
|
staticinherited |
site | A site. |
Definition at line 109 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::hasUnknown().
|
staticinherited |
Definition at line 120 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
site | A site. |
Definition at line 46 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SiteContainerTools::changeUnresolvedCharactersToGaps().
|
staticinherited |
Compute the heterozygosity index of a list.
where is the frequency of state .
list | A list. |
Definition at line 760 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 174 of file SymbolListTools.h.
References bpp::SymbolListTools::isComplete().
|
staticinherited |
site | A site. |
Definition at line 134 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SiteContainerTools::getCompleteSites(), bpp::SymbolListTools::isComplete(), bpp::CompleteTemplateSiteContainerIterator< SiteType, SequenceType, HashType >::nextCompleteSitePosition(), and bpp::CompleteTemplateSiteContainerIterator< SiteType, SequenceType, HashType >::previousCompleteSitePosition().
|
staticinherited |
Definition at line 145 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 208 of file SymbolListTools.h.
References bpp::SymbolListTools::isConstant().
|
staticinherited |
Tell if a site is constant, that is displaying the same state in all sequences that do not present a gap.
site | A site. |
ignoreUnknown | If true, positions with unknown positions will be ignored. Otherwise, a site with one single state + any uncertain state will not be considered as constant. |
unresolvedRaisesException | In case of ambiguous case (gap only site for instance), throw an exception. Otherwise returns false. |
Definition at line 258 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by fixedDifferences(), generateCodonSiteWithoutRareVariant(), bpp::SymbolListTools::isConstant(), isFourFoldDegenerated(), isMonoSitePolymorphic(), isSynonymousPolymorphic(), numberOfNonSynonymousSubstitutions(), numberOfSubstitutions(), piNonSynonymous(), and piSynonymous().
|
staticinherited |
Definition at line 320 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
Tell if a list has exactly 2 distinct characters.
list | A list. |
Definition at line 946 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
static |
site | The site to analyze. |
gCode | The genetic code to use. |
If non-synonymous mutation
Definition at line 792 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::getValue(), bpp::SymbolListTools::isConstant(), bpp::GeneticCode::isFourFoldDegenerated(), isSynonymousPolymorphic(), and bpp::AbstractTemplateSymbolList< T >::size().
|
inlinestaticinherited |
Definition at line 64 of file SymbolListTools.h.
References bpp::SymbolListTools::isGapOnly().
|
staticinherited |
site | A site. |
Definition at line 59 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::isGapOnly(), bpp::SiteContainerTools::removeGapOnlySites(), and bpp::SiteContainerTools::removeGapOrUnresolvedOnlySites().
|
staticinherited |
Definition at line 71 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
inlinestaticinherited |
Definition at line 108 of file SymbolListTools.h.
References bpp::SymbolListTools::isGapOrUnresolvedOnly().
|
staticinherited |
site | A site. |
Definition at line 84 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::isGapOrUnresolvedOnly(), and bpp::SiteContainerTools::removeGapOrUnresolvedOnlySites().
|
staticinherited |
Definition at line 95 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
static |
Method to know if a polymorphic codon site is polymorphic at only one site.
site | a Site |
Definition at line 56 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), and bpp::AbstractTemplateSymbolList< T >::size().
|
staticinherited |
Tell if a site is a parsimony informative site.
At least two distinct characters must be present.
site | a Site. |
Definition at line 912 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
static |
Method to know if polymorphism at a codon site is synonymous.
site | a Site |
gCode | a GeneticCode |
Definition at line 94 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::Alphabet::equals(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::SymbolListTools::getCounts(), bpp::GeneticCode::getSourceAlphabet(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), bpp::AbstractTemplateSymbolList< T >::size(), bpp::GeneticCode::sourceAlphabet(), and bpp::GeneticCode::translate().
Referenced by isFourFoldDegenerated().
|
staticinherited |
Tell if a list has more than 2 distinct characters.
list | A list. |
Definition at line 935 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
Compute the joint entropy between two lists.
where is the frequency of the pair .
list1 | First list |
list2 | Second list |
resolveUnknowns | Tell is unknown characters must be resolved. |
Definition at line 706 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
|
static |
Return the mean number of synonymous positions per codon site.
A site is consider as x% synonymous if x% of the possible mutations are synonymous Transition/transversion ratio can be taken into account (use the variable ratio) The mean is computed over the VectorSite.
Unresolved and stop codons are counted as 0.
site | a Site |
gCode | a GeneticCode |
ratio | a double, set by default to 1 |
Definition at line 537 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::Alphabet::equals(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::GeneticCode::getCodonAlphabet(), bpp::SymbolListTools::getFrequencies(), bpp::AlphabetTools::isCodonAlphabet(), bpp::AbstractTemplateSymbolList< T >::size(), and bpp::GeneticCode::sourceAlphabet().
|
staticinherited |
Compute the mutual information between two lists.
where and are the frequencies of states and , and is the frequency of the pair .
list1 | First list |
list2 | Second list |
resolveUnknowns | Tell is unknown characters must be resolved. |
Definition at line 656 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
|
static |
Compute the number of differences between two codons.
i | a int |
j | a int |
ca | a CodonAlphabet |
Definition at line 191 of file CodonSiteTools.cpp.
References bpp::CodonAlphabet::getFirstPosition(), bpp::CodonAlphabet::getSecondPosition(), and bpp::CodonAlphabet::getThirdPosition().
|
inlinestaticinherited |
Definition at line 86 of file SymbolListTools.h.
References bpp::SymbolListTools::numberOfGaps().
|
staticinherited |
site | A site. |
Definition at line 159 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SequenceApplicationTools::getSitesToAnalyse(), and bpp::SymbolListTools::numberOfGaps().
|
staticinherited |
Definition at line 172 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
static |
Return the number of Non Synonymous substitutions per codon site.
It is assumed that the path linking amino acids only involved one substitution by step.
Rare variants (<= freqmin) can be excluded. In case of complex codon, the path that gives the minimum number of non-synonymous changes is chosen. The argument minchange=true is sent to numberOfSynonymousDifferences used in this method. Otherwise, a non-integer number could be return.
site | a Site |
gCode | a GeneticCode |
freqmin | a double To exclude snp in frequency strictly lower than freqmin (by default freqmin = 0). |
Definition at line 614 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), count(), bpp::Alphabet::equals(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::GeneticCode::getCodonAlphabet(), bpp::SymbolListTools::getCounts(), bpp::SymbolListTools::hasGap(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), bpp::AbstractTemplateSymbolList< T >::size(), and bpp::GeneticCode::sourceAlphabet().
|
static |
Return the number of substitutions per codon site.
No recombination is assumed, that is in complex codon homoplasy is assumed. Example:
Here, 3 substitutions are counted. Assuming that the last codon (AGC) is a recombinant between ATC and AGT would have lead to counting only 2 substitutions.
Rare variants (<= freqmin) can be excluded.
site | a Site |
gCode | a GeneticCode |
freqmin | a double To exclude snp in frequency strictly lower than freqmin (by default freqmin = 0) |
Definition at line 571 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), generateCodonSiteWithoutRareVariant(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::SymbolListTools::getNumberOfDistinctCharacters(), bpp::SymbolListTools::hasGap(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), and bpp::AbstractTemplateSymbolList< T >::size().
|
static |
Compute the number of synonymous differences between two codons.
For complex codon: If minchange = false (default option) the different paths are equally weighted. If minchange = true the path with the minimum number of non-synonymous change is chosen. Paths included stop codons are excluded.
i | a int |
j | a int |
gCode | a GeneticCode |
minchange | a boolean set by default to false |
Definition at line 205 of file CodonSiteTools.cpp.
References bpp::GeneticCode::areSynonymous(), bpp::GeneticCode::getCodonAlphabet(), bpp::GeneticCode::isStop(), bpp::VectorTools::max(), and bpp::VectorTools::sum().
|
static |
Return the number of synonymous positions of a codon.
A site is consider as x% synonymous if x% of the possible mutations are synonymous Transition/transversion ratio can be taken into account (use the variable ratio)
Unresolved codons and stop codon will return a value of 0.
i | a int |
gCode | a GeneticCode |
ratio | a double set by default to 1 |
Definition at line 496 of file CodonSiteTools.cpp.
References bpp::GeneticCode::getCodonAlphabet(), bpp::GeneticCode::isStop(), and bpp::GeneticCode::translate().
|
inlinestaticinherited |
Definition at line 130 of file SymbolListTools.h.
References bpp::SymbolListTools::numberOfUnresolved().
|
staticinherited |
site | A site. |
Definition at line 187 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SequenceApplicationTools::getSitesToAnalyse(), and bpp::SymbolListTools::numberOfUnresolved().
|
staticinherited |
Definition at line 200 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
static |
Compute the non-synonymous pi per codon site.
The following formula is used:
where n is the number of sequence, and the frequencies of each codon type occurring at the site the number of nonsynonymous difference between these codons. Be careful: here, pi is not normalized by the number of non-synonymous sites. If minchange = false (default option) the different paths are equally weighted. If minchange = true the path with the minimum number of non-synonymous change is chosen.
site | a Site |
gCode | a GeneticCode |
minchange | a boolean set by default to false |
Definition at line 459 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::Alphabet::equals(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::GeneticCode::getCodonAlphabet(), bpp::SymbolListTools::getFrequencies(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), bpp::AbstractTemplateSymbolList< T >::size(), and bpp::GeneticCode::sourceAlphabet().
|
static |
Compute the synonymous pi per codon site.
The following formula is used:
where n is the number of sequence, and the frequencies of each codon type occurring at the site the number of synonymous difference between these codons. Be careful: here, pi is not normalized by the number of synonymous sites.
If minchange = false (default option) the different paths are equally weighted. If minchange = true the path with the minimum number of non-synonymous change is chosen.
site | a Site |
gCode | a GeneticCode |
minchange | a boolean set by default to false |
Definition at line 427 of file CodonSiteTools.cpp.
References bpp::AbstractTemplateSymbolList< T >::alphabet(), bpp::Alphabet::equals(), bpp::AbstractTemplateSymbolList< T >::getAlphabet(), bpp::GeneticCode::getCodonAlphabet(), bpp::SymbolListTools::getFrequencies(), bpp::AlphabetTools::isCodonAlphabet(), bpp::SymbolListTools::isConstant(), bpp::AbstractTemplateSymbolList< T >::size(), and bpp::GeneticCode::sourceAlphabet().
|
staticinherited |
Compute the factorial diversity index of a site.
where is the number of times state is observed in the site.
list | A list. |
Definition at line 744 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::size().
|
staticinherited |
Compute the Shannon entropy index of a SymbolList.
where is the frequency of state .
list | A list. |
resolveUnknowns | Tell is unknown characters must be resolved. |
Definition at line 632 of file SymbolListTools.cpp.
References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().
Referenced by bpp::SymbolListTools::entropy().