|
bpp-popgen
2.1.0
|
Utilitary function to manipulate PolymorphismSequenceContainer. More...
#include <Bpp/PopGen/PolymorphismSequenceContainerTools.h>
Public Member Functions | |
| ~PolymorphismSequenceContainerTools () | |
Static Public Member Functions | |
| static PolymorphismSequenceContainer * | read (const std::string &path, const Alphabet *alpha) throw (Exception) |
| Read a Mase+ file and return a PolymorphismSequenceContainer. Toggle Sequence when selection tag begin with OUTGROUP (see Polymorphix) | |
| static PolymorphismSequenceContainer * | extractIngroup (const PolymorphismSequenceContainer &psc) throw (Exception) |
| Extract ingroup sequences from a PolymorphismSequenceContainer and create a new one. | |
| static PolymorphismSequenceContainer * | extractOutgroup (const PolymorphismSequenceContainer &psc) throw (Exception) |
| Extract outgroup sequences from a PolymorphismSequenceContainer and create a new one. | |
| static PolymorphismSequenceContainer * | extractGroup (const PolymorphismSequenceContainer &psc, size_t group_id) throw (Exception) |
| Extract a special group from the PolymorphismSequenceContainer. | |
| static PolymorphismSequenceContainer * | getSelectedSequences (const PolymorphismSequenceContainer &psc, const SequenceSelection &ss) |
| Extract selected sequences. | |
| static PolymorphismSequenceContainer * | sample (const PolymorphismSequenceContainer &psc, size_t n, bool replace=true) |
| Get a random set of sequences. | |
| static PolymorphismSequenceContainer * | getSitesWithoutGaps (const PolymorphismSequenceContainer &psc) |
| Retrieves sites without gaps from PolymorphismSequenceContainer. | |
| static size_t | getNumberOfNonGapSites (const PolymorphismSequenceContainer &psc, bool ingroup) throw (Exception) |
| Return number of sites without gaps in a PolymorphismSequenceContainer. | |
| static size_t | getNumberOfCompleteSites (const PolymorphismSequenceContainer &psc, bool ingroup) throw (Exception) |
| Return number of completely resolved sites in a PolymorphismSequenceContainer. | |
| static PolymorphismSequenceContainer * | getCompleteSites (const PolymorphismSequenceContainer &psc) |
| Retrieves complete sites from a PolymorphismSequenceContainer. | |
| static PolymorphismSequenceContainer * | excludeFlankingGap (const PolymorphismSequenceContainer &psc) |
| exclude flanking sites with gap but keep gap sites within the alignment | |
| static PolymorphismSequenceContainer * | getSelectedSites (const PolymorphismSequenceContainer &psc, const std::string &setName, bool phase) |
| Get a PolymorphismSequenceContainer corresponding to a site selection annotated in the mase comments. | |
| static PolymorphismSequenceContainer * | getNonCodingSites (const PolymorphismSequenceContainer &psc, const std::string &setName) |
| Retrieve non-coding sites defined in the mase file header. | |
| static PolymorphismSequenceContainer * | getOnePosition (const PolymorphismSequenceContainer &psc, const std::string &setName, size_t pos) |
| Retrieve sites at one codon position (1,2,3) | |
| static PolymorphismSequenceContainer * | getIntrons (const PolymorphismSequenceContainer &psc, const std::string &setName, const CodonAlphabet *ca) |
| Retrieve intron sites. | |
| static PolymorphismSequenceContainer * | get5Prime (const PolymorphismSequenceContainer &psc, const std::string &setName) |
| Retrieve 5' sites. | |
| static PolymorphismSequenceContainer * | get3Prime (const PolymorphismSequenceContainer &psc, const std::string &setName, const CodonAlphabet *ca) |
| Retrieve 3' sites. | |
| static std::string | getIngroupSpeciesName (const PolymorphismSequenceContainer &psc) |
| Get the species name of the ingroup. | |
Utilitary function to manipulate PolymorphismSequenceContainer.
Definition at line 71 of file PolymorphismSequenceContainerTools.h.
Definition at line 46 of file PolymorphismSequenceContainerTools.cpp.
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::excludeFlankingGap | ( | const PolymorphismSequenceContainer & | psc | ) | [static] |
exclude flanking sites with gap but keep gap sites within the alignment
| psc | a PolymorphismSequenceContainer reference |
Definition at line 318 of file PolymorphismSequenceContainerTools.cpp.
References bpp::PolymorphismSequenceContainer::clone(), bpp::VectorSiteContainer::deleteSite(), bpp::VectorSiteContainer::getNumberOfSites(), bpp::VectorSiteContainer::getSite(), and bpp::SiteTools::hasGap().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::extractGroup | ( | const PolymorphismSequenceContainer & | psc, |
| size_t | group_id | ||
| ) | throw (Exception) [static] |
Extract a special group from the PolymorphismSequenceContainer.
| psc | a PolymorphismSequenceContainer reference. |
| group_id | the group identifier as an size_t. |
| GroupNotFoundException | if group_id is not found. |
Definition at line 149 of file PolymorphismSequenceContainerTools.cpp.
References bpp::PolymorphismSequenceContainer::deleteSequence().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::extractIngroup | ( | const PolymorphismSequenceContainer & | psc | ) | throw (Exception) [static] |
Extract ingroup sequences from a PolymorphismSequenceContainer and create a new one.
| psc | a PolymorphismSequenceContainer reference |
| Exception | if there is no ingroup sequence |
Definition at line 103 of file PolymorphismSequenceContainerTools.cpp.
References bpp::PolymorphismSequenceContainer::deleteSequence().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::extractOutgroup | ( | const PolymorphismSequenceContainer & | psc | ) | throw (Exception) [static] |
Extract outgroup sequences from a PolymorphismSequenceContainer and create a new one.
| psc | a PolymorphismSequenceContainer reference |
| Exception | if there is no outgroup sequence |
Definition at line 126 of file PolymorphismSequenceContainerTools.cpp.
References bpp::PolymorphismSequenceContainer::deleteSequence().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::get3Prime | ( | const PolymorphismSequenceContainer & | psc, |
| const std::string & | setName, | ||
| const CodonAlphabet * | ca | ||
| ) | [static] |
Retrieve 3' sites.
| psc | a PolymorphismSequenceContainer |
| setName | name of the CDS site selection |
| ca | a codon alphabet |
Definition at line 525 of file PolymorphismSequenceContainerTools.cpp.
References bpp::CodonAlphabet::getCodon(), bpp::VectorSiteContainer::getGeneralComments(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::VectorSiteContainer::getNumberOfSites(), bpp::SiteContainerTools::getSelectedSites(), bpp::VectorSiteContainer::getSite(), bpp::MaseTools::getSiteSet(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::CodonAlphabet::isStop(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), and bpp::PolymorphismSequenceContainer::setGroupId().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::get5Prime | ( | const PolymorphismSequenceContainer & | psc, |
| const std::string & | setName | ||
| ) | [static] |
Retrieve 5' sites.
| psc | a PolymorphismSequenceContainer |
| setName | name of the CDS site selection |
Definition at line 487 of file PolymorphismSequenceContainerTools.cpp.
References bpp::VectorSiteContainer::getGeneralComments(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::MaseTools::getPhase(), bpp::SiteContainerTools::getSelectedSites(), bpp::VectorSiteContainer::getSite(), bpp::MaseTools::getSiteSet(), bpp::Site::getValue(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), and bpp::PolymorphismSequenceContainer::setGroupId().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::getCompleteSites | ( | const PolymorphismSequenceContainer & | psc | ) | [static] |
Retrieves complete sites from a PolymorphismSequenceContainer.
| psc | a PolymorphismSequenceContainer reference |
Definition at line 293 of file PolymorphismSequenceContainerTools.cpp.
References bpp::VectorSiteContainer::addSite(), bpp::VectorSiteContainer::getAlphabet(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::PolymorphismSequenceContainer::getSequenceCount(), bpp::VectorSiteContainer::getSequencesNames(), bpp::CompleteSiteContainerIterator::hasMoreSites(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::CompleteSiteContainerIterator::nextSite(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), bpp::PolymorphismSequenceContainer::setGroupId(), bpp::PolymorphismSequenceContainer::setSequenceCount(), and bpp::VectorSiteContainer::setSequencesNames().
| string PolymorphismSequenceContainerTools::getIngroupSpeciesName | ( | const PolymorphismSequenceContainer & | psc | ) | [static] |
Get the species name of the ingroup.
| psc | a PolymorphismSequenceContainer. |
Definition at line 562 of file PolymorphismSequenceContainerTools.cpp.
References bpp::MaseTools::getAvailableSequenceSelections(), bpp::VectorSiteContainer::getGeneralComments(), and bpp::StringTokenizer::getToken().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::getIntrons | ( | const PolymorphismSequenceContainer & | psc, |
| const std::string & | setName, | ||
| const CodonAlphabet * | ca | ||
| ) | [static] |
Retrieve intron sites.
Same as getNonCodgingSites but exclude 5' and 3' flanking regions if there are
| psc | a PolymorphismSequenceContainer |
| setName | name of the CDS site selection |
| ca | a codon alphabet |
Definition at line 433 of file PolymorphismSequenceContainerTools.cpp.
References bpp::CodonAlphabet::getCodon(), bpp::VectorSiteContainer::getGeneralComments(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::VectorSiteContainer::getNumberOfSites(), bpp::MaseTools::getPhase(), bpp::SiteContainerTools::getSelectedSites(), bpp::VectorSiteContainer::getSite(), bpp::MaseTools::getSiteSet(), bpp::Site::getValue(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::CodonAlphabet::isStop(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), and bpp::PolymorphismSequenceContainer::setGroupId().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::getNonCodingSites | ( | const PolymorphismSequenceContainer & | psc, |
| const std::string & | setName | ||
| ) | [static] |
Retrieve non-coding sites defined in the mase file header.
Be carefull: to use before excluding gap
| psc | a PolymorphismSequenceContainer reference |
| setName | name of the CDS site selection |
Definition at line 364 of file PolymorphismSequenceContainerTools.cpp.
References bpp::VectorSiteContainer::getGeneralComments(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::VectorSiteContainer::getNumberOfSites(), bpp::SiteContainerTools::getSelectedSites(), bpp::MaseTools::getSiteSet(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), and bpp::PolymorphismSequenceContainer::setGroupId().
| size_t PolymorphismSequenceContainerTools::getNumberOfCompleteSites | ( | const PolymorphismSequenceContainer & | psc, |
| bool | ingroup | ||
| ) | throw (Exception) [static] |
Return number of completely resolved sites in a PolymorphismSequenceContainer.
| psc | a PolymorphismSequenceContainer reference |
| ingroup | a boolean set to true if you want to take only ingroup sequences into account |
| Exception | if there is no ingroup sequence |
Definition at line 263 of file PolymorphismSequenceContainerTools.cpp.
References bpp::SimpleSiteContainerIterator::hasMoreSites(), bpp::SiteTools::isComplete(), and bpp::SimpleSiteContainerIterator::nextSite().
| size_t PolymorphismSequenceContainerTools::getNumberOfNonGapSites | ( | const PolymorphismSequenceContainer & | psc, |
| bool | ingroup | ||
| ) | throw (Exception) [static] |
Return number of sites without gaps in a PolymorphismSequenceContainer.
| psc | a PolymorphismSequenceContainer reference |
| ingroup | a boolean set to true if you want to take only ingroup sequences into account |
| Exception | if there is no ingroup sequence |
Definition at line 233 of file PolymorphismSequenceContainerTools.cpp.
References bpp::SiteTools::hasGap(), bpp::SimpleSiteContainerIterator::hasMoreSites(), and bpp::SimpleSiteContainerIterator::nextSite().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::getOnePosition | ( | const PolymorphismSequenceContainer & | psc, |
| const std::string & | setName, | ||
| size_t | pos | ||
| ) | [static] |
Retrieve sites at one codon position (1,2,3)
Be carefull: to use before excluding gap Be careful: if there is no phase information, the method catch an exception and set the phase to 1 This allows to use this method for PolymorphismSequenceContainer generated by getSelectedSequence
| psc | a PolymorphismSequenceContainer reference |
| setName | name of the CDS site selection |
| pos | position index. |
Definition at line 392 of file PolymorphismSequenceContainerTools.cpp.
References bpp::VectorSiteContainer::getGeneralComments(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::VectorSiteContainer::getNumberOfSites(), bpp::MaseTools::getPhase(), bpp::SiteContainerTools::getSelectedSites(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), and bpp::PolymorphismSequenceContainer::setGroupId().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::getSelectedSequences | ( | const PolymorphismSequenceContainer & | psc, |
| const SequenceSelection & | ss | ||
| ) | [static] |
Extract selected sequences.
| psc | a PolymorphismSequenceContainer reference. |
| ss | a sequence selection. |
Definition at line 172 of file PolymorphismSequenceContainerTools.cpp.
References bpp::PolymorphismSequenceContainer::addSequence(), bpp::VectorSiteContainer::getAlphabet(), bpp::VectorSiteContainer::getGeneralComments(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getSequence(), bpp::PolymorphismSequenceContainer::getSequenceCount(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), bpp::VectorSiteContainer::setGeneralComments(), and bpp::PolymorphismSequenceContainer::setGroupId().
Referenced by sample().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::getSelectedSites | ( | const PolymorphismSequenceContainer & | psc, |
| const std::string & | setName, | ||
| bool | phase | ||
| ) | [static] |
Get a PolymorphismSequenceContainer corresponding to a site selection annotated in the mase comments.
Be carefull : in the new PolymorphismSequenceContainer the mase comments are lost Information about cds positions and start codon is no more available
| psc | a PolymorphismSequenceContainer. |
| setName | The name of the set to retrieve. |
| phase | a boolean set to true if you want to take the phase into account during the extraction. It removes the useless sites. |
Definition at line 335 of file PolymorphismSequenceContainerTools.cpp.
References bpp::VectorSiteContainer::deleteGeneralComments(), bpp::SiteContainer::deleteSite(), bpp::VectorSiteContainer::getGeneralComments(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::MaseTools::getPhase(), bpp::MaseTools::getSelectedSites(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), and bpp::PolymorphismSequenceContainer::setGroupId().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::getSitesWithoutGaps | ( | const PolymorphismSequenceContainer & | psc | ) | [static] |
Retrieves sites without gaps from PolymorphismSequenceContainer.
| psc | a PolymorphismSequenceContainer reference |
Definition at line 208 of file PolymorphismSequenceContainerTools.cpp.
References bpp::VectorSiteContainer::addSite(), bpp::VectorSiteContainer::getAlphabet(), bpp::PolymorphismSequenceContainer::getGroupId(), bpp::VectorSiteContainer::getNumberOfSequences(), bpp::PolymorphismSequenceContainer::getSequenceCount(), bpp::VectorSiteContainer::getSequencesNames(), bpp::NoGapSiteContainerIterator::hasMoreSites(), bpp::PolymorphismSequenceContainer::isIngroupMember(), bpp::NoGapSiteContainerIterator::nextSite(), bpp::PolymorphismSequenceContainer::setAsIngroupMember(), bpp::PolymorphismSequenceContainer::setAsOutgroupMember(), bpp::PolymorphismSequenceContainer::setGroupId(), bpp::PolymorphismSequenceContainer::setSequenceCount(), and bpp::VectorSiteContainer::setSequencesNames().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::read | ( | const std::string & | path, |
| const Alphabet * | alpha | ||
| ) | throw (Exception) [static] |
Read a Mase+ file and return a PolymorphismSequenceContainer. Toggle Sequence when selection tag begin with OUTGROUP (see Polymorphix)
| Exception | if the file is not in the specified format |
Definition at line 50 of file PolymorphismSequenceContainerTools.cpp.
References bpp::MaseTools::getAvailableSequenceSelections(), bpp::OrderedSequenceContainer::getGeneralComments(), bpp::MaseTools::getSequenceSet(), bpp::Mase::readSequences(), and bpp::PolymorphismSequenceContainer::setAsOutgroupMember().
| PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::sample | ( | const PolymorphismSequenceContainer & | psc, |
| size_t | n, | ||
| bool | replace = true |
||
| ) | [static] |
Get a random set of sequences.
| psc | a PolymorphismSequenceContainer reference |
| n | the number of sequence to get |
| replace | a boolean flag true for sampling with replacement |
Definition at line 192 of file PolymorphismSequenceContainerTools.cpp.
References bpp::VectorSiteContainer::getNumberOfSequences(), bpp::RandomTools::getSample(), and getSelectedSequences().