Documentation
¶
Index ¶
- Constants
- func AlphabetFromString(alphabet string) int
- func DetectAlphabet(seq string) int
- func NewAlign(alphabet int) *align
- func NewSeqBag(alphabet int) *seqbag
- func NewSequence(name string, sequence []rune, comment string) *seq
- func RandomSequence(alphabet, length int) ([]rune, error)
- type AlignChannel
- type Alignment
- type SeqBag
- type Sequence
Constants ¶
View Source
const ( AMINOACIDS = 0 // Amino acid sequence alphabet NUCLEOTIDS = 1 // Nucleotid sequence alphabet UNKNOWN = 2 // Unkown alphabet GAP = '-' POINT = '.' OTHER = '*' PSSM_NORM_NONE = 0 // No normalization PSSM_NORM_FREQ = 1 // Normalization by freq in the site PSSM_NORM_DATA = 2 // Normalization by aa/nt frequency in data PSSM_NORM_UNIF = 3 // Normalization by uniform frequency PSSM_NORM_LOGO = 4 // Normalization like LOGO : v(site)=freq*(log2(alphabet)-H(site)-pseudocount FORMAT_FASTA = 0 FORMAT_PHYLIP = 1 FORMAT_NEXUS = 2 FORMAT_CLUSTAL = 3 POSITION_IDENTICAL = 0 // All characters in a position are the same POSITION_CONSERVED = 1 // Same strong group POSITION_SEMI_CONSERVED = 2 // Same weak group POSITION_NOT_CONSERVED = 3 // None of the above values )
Variables ¶
This section is empty.
Functions ¶
func AlphabetFromString ¶ added in v0.2.3
func DetectAlphabet ¶
func NewSequence ¶
func RandomSequence ¶ added in v0.1.3
Types ¶
type AlignChannel ¶ added in v0.2.4
type Alignment ¶
type Alignment interface {
SeqBag
AddGaps(rate, lenprop float64)
AvgAllelesPerSite() float64
BuildBootstrap() Alignment
CharStatsSite(site int) (map[rune]int, error)
Clone() (Alignment, error)
CodonAlign(ntseqs SeqBag) (codonAl *align, err error)
Concat(Alignment) error // concatenates the given alignment with this alignment
Deduplicate() (Alignment, error)
Entropy(site int, removegaps bool) (float64, error) // Entropy of the given site
Length() int // Length of the alignment
MaxCharStats() ([]rune, []int)
Mutate(rate float64) // Adds uniform substitutions in the alignment (~sequencing errors)
NbVariableSites() int // Nb of variable sites
Pssm(log bool, pseudocount float64, normalization int) (pssm map[rune][]float64, err error) // Normalization: PSSM_NORM_NONE, PSSM_NORM_UNIF, PSSM_NORM_DATA
Rarefy(nb int, counts map[string]int) (Alignment, error) // Take a new rarefied sample taking into accounts weights
RandSubAlign(length int) (Alignment, error) // Extract a random subalignment with given length from this alignment
Recombine(rate float64, lenprop float64)
RemoveGapSeqs(cutoff float64) // Removes sequences having >= cutoff gaps
RemoveGapSites(cutoff float64) // Removes sites having >= cutoff gaps
Sample(nb int) (Alignment, error) // generate a sub sample of the sequences
ShuffleSites(rate float64, roguerate float64, randroguefirst bool) []string
SimulateRogue(prop float64, proplen float64) ([]string, []string) // add "rogue" sequences
SiteConservation(position int) (int, error) // If the site is conserved:
SubAlign(start, length int) (Alignment, error) // Extract a subalignment from this alignment
Swap(rate float64)
Translate(phase int) (transAl *align, err error) // Translates nt sequence if possible
TrimSequences(trimsize int, fromStart bool) error
}
func RandomAlignment ¶ added in v0.1.3
type SeqBag ¶ added in v0.3.0
type SeqBag interface {
AddSequence(name string, sequence string, comment string) error
AddSequenceChar(name string, sequence []rune, comment string) error
AppendSeqIdentifier(identifier string, right bool)
Alphabet() int
AlphabetStr() string
AlphabetCharacters() []rune
AutoAlphabet() // detects and sets alphabet automatically for all the sequences
CharStats() map[rune]int64
CleanNames() // Clean sequence names (newick special char)
GetSequence(name string) (string, bool) // Get a sequence by names
GetSequenceById(ith int) (string, bool)
GetSequenceChar(name string) ([]rune, bool)
GetSequenceCharById(ith int) ([]rune, bool)
GetSequenceNameById(ith int) (string, bool)
SetSequenceChar(ithAlign, ithSite int, char rune) error
Identical(SeqBag) bool
Iterate(it func(name string, sequence string))
IterateChar(it func(name string, sequence []rune))
IterateAll(it func(name string, sequence []rune, comment string))
NbSequences() int
Rename(namemap map[string]string)
RenameRegexp(regex, replace string, namemap map[string]string) error
ShuffleSequences() // Shuffle sequence order
TrimNames(namemap map[string]string, size int) error
TrimNamesAuto(namemap map[string]string, curid *int) error
Sort() // Sorts the sequences by name
}
Click to show internal directories.
Click to hide internal directories.