bpp-popgen  3.0.0
bpp::PolymorphismSequenceContainerTools Class Reference

Utilitary function to manipulate PolymorphismSequenceContainer. More...

#include <Bpp/PopGen/PolymorphismSequenceContainerTools.h>

Public Member Functions

 ~PolymorphismSequenceContainerTools ()
 

Static Public Member Functions

static PolymorphismSequenceContainerread (const std::string &path, const Alphabet *alpha)
 Read a Mase+ file and return a PolymorphismSequenceContainer. Toggle Sequence when selection tag begin with OUTGROUP (see Polymorphix) More...
 
static PolymorphismSequenceContainerextractIngroup (const PolymorphismSequenceContainer &psc)
 Extract ingroup sequences from a PolymorphismSequenceContainer and create a new one. More...
 
static PolymorphismSequenceContainerextractOutgroup (const PolymorphismSequenceContainer &psc)
 Extract outgroup sequences from a PolymorphismSequenceContainer and create a new one. More...
 
static PolymorphismSequenceContainerextractGroup (const PolymorphismSequenceContainer &psc, size_t group_id)
 Extract a special group from the PolymorphismSequenceContainer. More...
 
static PolymorphismSequenceContainergetSelectedSequences (const PolymorphismSequenceContainer &psc, const SequenceSelection &ss)
 Extract selected sequences. More...
 
static PolymorphismSequenceContainersample (const PolymorphismSequenceContainer &psc, size_t n, bool replace=true)
 Get a random set of sequences. More...
 
static PolymorphismSequenceContainergetSitesWithoutGaps (const PolymorphismSequenceContainer &psc)
 Retrieves sites without gaps from PolymorphismSequenceContainer. More...
 
static size_t getNumberOfNonGapSites (const PolymorphismSequenceContainer &psc, bool ingroup)
 Return number of sites without gaps in a PolymorphismSequenceContainer. More...
 
static size_t getNumberOfCompleteSites (const PolymorphismSequenceContainer &psc, bool ingroup)
 Return number of completely resolved sites in a PolymorphismSequenceContainer. More...
 
static PolymorphismSequenceContainergetCompleteSites (const PolymorphismSequenceContainer &psc)
 Retrieves complete sites from a PolymorphismSequenceContainer. More...
 
static PolymorphismSequenceContainerexcludeFlankingGap (const PolymorphismSequenceContainer &psc)
 exclude flanking sites with gap but keep gap sites within the alignment More...
 
static PolymorphismSequenceContainergetSelectedSites (const PolymorphismSequenceContainer &psc, const std::string &setName, bool phase)
 Get a PolymorphismSequenceContainer corresponding to a site selection annotated in the mase comments. More...
 
static PolymorphismSequenceContainergetNonCodingSites (const PolymorphismSequenceContainer &psc, const std::string &setName)
 Retrieve non-coding sites defined in the mase file header. More...
 
static PolymorphismSequenceContainergetOnePosition (const PolymorphismSequenceContainer &psc, const std::string &setName, size_t pos)
 Retrieve sites at one codon position (1,2,3) More...
 
static PolymorphismSequenceContainergetIntrons (const PolymorphismSequenceContainer &psc, const std::string &setName, const GeneticCode *gCode)
 Retrieve intron sites. More...
 
static PolymorphismSequenceContainerget5Prime (const PolymorphismSequenceContainer &psc, const std::string &setName)
 Retrieve 5' sites. More...
 
static PolymorphismSequenceContainerget3Prime (const PolymorphismSequenceContainer &psc, const std::string &setName, const GeneticCode *gCode)
 Retrieve 3' sites. More...
 
static std::string getIngroupSpeciesName (const PolymorphismSequenceContainer &psc)
 Get the species name of the ingroup. More...
 
static PolymorphismSequenceContainergetSynonymousSites (const PolymorphismSequenceContainer &psc, const GeneticCode &gCode)
 Retrieve synonymous codon sites. More...
 
static PolymorphismSequenceContainergetNonSynonymousSites (const PolymorphismSequenceContainer &psc, const GeneticCode &gCode)
 Retrieve non-synonymous codon sites. More...
 

Detailed Description

Utilitary function to manipulate PolymorphismSequenceContainer.

Author
Sylvain Gaillard

Definition at line 71 of file PolymorphismSequenceContainerTools.h.

Constructor & Destructor Documentation

◆ ~PolymorphismSequenceContainerTools()

PolymorphismSequenceContainerTools::~PolymorphismSequenceContainerTools ( )

Definition at line 48 of file PolymorphismSequenceContainerTools.cpp.

Member Function Documentation

◆ excludeFlankingGap()

PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::excludeFlankingGap ( const PolymorphismSequenceContainer psc)
static

◆ extractGroup()

PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::extractGroup ( const PolymorphismSequenceContainer psc,
size_t  group_id 
)
static

◆ extractIngroup()

PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::extractIngroup ( const PolymorphismSequenceContainer psc)
static

◆ extractOutgroup()

PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::extractOutgroup ( const PolymorphismSequenceContainer psc)
static

◆ get3Prime()

◆ get5Prime()

◆ getCompleteSites()

◆ getIngroupSpeciesName()

string PolymorphismSequenceContainerTools::getIngroupSpeciesName ( const PolymorphismSequenceContainer psc)
static

◆ getIntrons()

◆ getNonCodingSites()

◆ getNonSynonymousSites()

◆ getNumberOfCompleteSites()

size_t PolymorphismSequenceContainerTools::getNumberOfCompleteSites ( const PolymorphismSequenceContainer psc,
bool  ingroup 
)
static

Return number of completely resolved sites in a PolymorphismSequenceContainer.

Parameters
psca PolymorphismSequenceContainer reference
ingroupa boolean set to true if you want to take only ingroup sequences into account
Exceptions
Exceptionif there is no ingroup sequence

Definition at line 265 of file PolymorphismSequenceContainerTools.cpp.

References count(), bpp::VectorSiteContainer::getNumberOfSites(), bpp::SimpleSiteContainerIterator::hasMoreSites(), bpp::SiteTools::isComplete(), and bpp::SimpleSiteContainerIterator::nextSite().

◆ getNumberOfNonGapSites()

size_t PolymorphismSequenceContainerTools::getNumberOfNonGapSites ( const PolymorphismSequenceContainer psc,
bool  ingroup 
)
static

Return number of sites without gaps in a PolymorphismSequenceContainer.

Parameters
psca PolymorphismSequenceContainer reference
ingroupa boolean set to true if you want to take only ingroup sequences into account
Exceptions
Exceptionif there is no ingroup sequence

Definition at line 235 of file PolymorphismSequenceContainerTools.cpp.

References count(), bpp::VectorSiteContainer::getNumberOfSites(), bpp::SiteTools::hasGap(), bpp::SimpleSiteContainerIterator::hasMoreSites(), and bpp::SimpleSiteContainerIterator::nextSite().

◆ getOnePosition()

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

Parameters
psca PolymorphismSequenceContainer reference
setNamename of the CDS site selection
posposition index.

Definition at line 394 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().

◆ getSelectedSequences()

◆ getSelectedSites()

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

Parameters
psca PolymorphismSequenceContainer.
setNameThe name of the set to retrieve.
phasea boolean set to true if you want to take the phase into account during the extraction. It removes the useless sites.

Definition at line 337 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().

◆ getSitesWithoutGaps()

◆ getSynonymousSites()

◆ read()

PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::read ( const std::string &  path,
const Alphabet alpha 
)
static

Read a Mase+ file and return a PolymorphismSequenceContainer. Toggle Sequence when selection tag begin with OUTGROUP (see Polymorphix)

Parameters
pathPath to the Mase+ file
alphaSequence Alphabet
Exceptions
Exceptionif the file is not in the specified format

Definition at line 52 of file PolymorphismSequenceContainerTools.cpp.

References bpp::MaseTools::getAvailableSequenceSelections(), bpp::OrderedSequenceContainer::getGeneralComments(), bpp::MaseTools::getSequenceSet(), bpp::Mase::readSequences(), and bpp::PolymorphismSequenceContainer::setAsOutgroupMember().

◆ sample()

PolymorphismSequenceContainer * PolymorphismSequenceContainerTools::sample ( const PolymorphismSequenceContainer psc,
size_t  n,
bool  replace = true 
)
static

Get a random set of sequences.

Parameters
psca PolymorphismSequenceContainer reference
nthe number of sequence to get
replacea boolean flag true for sampling with replacement

Definition at line 194 of file PolymorphismSequenceContainerTools.cpp.

References bpp::VectorSiteContainer::getNumberOfSequences(), bpp::RandomTools::getSample(), and getSelectedSequences().


The documentation for this class was generated from the following files: