fn() computeAlignmentStatsCompute alignment statistics.
Compute alignment statistics.
Defined in | <seqan/align.h> |
---|---|
Signature |
TScoreVal computeAlignmentStats(stats, align, scoringScheme);
TScoreVal computeAlignmentStats(stats, row0, row1, scoringScheme);
|
Parameters
stats
|
The AlignmentStats object to store alignment statistics in. |
---|---|
align
|
The Align object to score. |
row0
|
The first row (Gaps object). |
row1
|
The second row (Gaps object). |
score
|
The Score object to use for the scoring scheme. |
Return Values
TScoreVal |
The score value of the alignment, of the same type as the value type of scoringScheme |
---|
Detailed Description
Examples
#include <iostream> #include <seqan/align.h> #include <seqan/sequence.h> using namespace seqan; int main() { // Create an alignment between subject and query. Peptide subject = "MGLSDGEWQLVLNVWGKVEADIPGHGQEVLIRLFKGHPETLEKFDKFKHLKSEDEMKASE" "DLKKHGATVLTALGGILKKKGHHEAEIKPLAQSHATKHKIPVKYLEFISECIIQVLQSKH" "PGDFGADAQGAMNKALELFRKDMASNYK"; Peptide query = "MSLTKTERTIIVSMWAKISTQADTIGTETLERLFLSHPQTKTYFPHFDLHPGSA" "QLRAHGSKVVAAVGDAVKSIDDIGGALSKLSELHAYILRVDPVNFKLLSHCLLVTLAARF" "PADFTAEAHAAWDKFLSVTEKYR"; Align<Peptide> align; resize(rows(align), 2); setSource(row(align, 0), subject); setSource(row(align, 1), query); Blosum62 scoringScheme(-1, -12); globalAlignment(align, scoringScheme); // Compute the statistics of the alignment. AlignmentStats stats; computeAlignmentStats(stats, align, scoringScheme); std::cout << align << "score: " << stats.alignmentScore << "\n" << "gap opens: " << stats.numGapOpens << "\n" << "gap extensions: " << stats.numGapExtensions << "\n" << "num insertions: " << stats.numInsertions << "\n" << "num deletions: " << stats.numDeletions << "\n" << "num matches: " << stats.numMatches << "\n" << "num mismatches: " << stats.numMismatches << "\n" << "num positive scores: " << stats.numPositiveScores << "\n" << "num negative scores: " << stats.numNegativeScores << "\n" << "percent similarity: " << stats.alignmentSimilarity << "\n" << "percent identity: " << stats.alignmentIdentity << "\n\n\n"; // Clip alignment rows and compute score of this view. setClippedEndPosition(row(align, 0), 100); setClippedEndPosition(row(align, 1), 100); setClippedBeginPosition(row(align, 0), 5); setClippedBeginPosition(row(align, 1), 5); computeAlignmentStats(stats, align, scoringScheme); std::cout << "Clipping alignment to (5, 100)\n" << align << "score: " << stats.alignmentScore << "\n" << "gap opens: " << stats.numGapOpens << "\n" << "gap extensions: " << stats.numGapExtensions << "\n" << "num insertions: " << stats.numInsertions << "\n" << "num deletions: " << stats.numDeletions << "\n" << "num matches: " << stats.numMatches << "\n" << "num mismatches: " << stats.numMismatches << "\n" << "num positive scores: " << stats.numPositiveScores << "\n" << "num negative scores: " << stats.numNegativeScores << "\n" << "percent similarity: " << stats.alignmentSimilarity << "\n" << "percent identity: " << stats.alignmentIdentity << "\n"; return 0; }
The output is as follows:
0 . : . : . : . : . : MGLSDGEWQLVLNVWGKVEADIPGHGQEVLIRLFKGHPETLEKFDKFKHL | | | | | | | | ||| || | | | MSLTKTERTIIVSMWAKISTQADTIGTETLERLFLSHPQTKTYFPHF--- 50 . : . : . : . : . : KSEDEMKASEDLKKHGATVLTALGGILKKKGHHEAEIKPLAQSHATKHKI | | | || | | | | | || ---DLHPGSAQLRAHGSKVVAAVGDAVKSIDDIGGALSKLSELHAYILRV 100 . : . : . : . : . PVKYLEFISECIIQVLQSKHPGDFGADAQGAMNKALELFRKDMASNYK | | | | || | | | | | | | DPVNFKLLSHCLLVTLAARFPADFTAEAHAAWDKFLSVTEK-----YR score: 159 gap opens: 2 gap extensions: 9 num insertions: 11 num deletions: 0 num matches: 41 num mismatches: 96 num positive scores: 69 num negative scores: 68 percent similarity: 46.6216 percent identity: 27.7027 Clipping alignment to (5, 100) 0 . : . : . : . : . : GEWQLVLNVWGKVEADIPGHGQEVLIRLFKGHPETLEKFDKFKHLKSEDE | | | | | | ||| || | | | | TERTIIVSMWAKISTQADTIGTETLERLFLSHPQTKTYFPHF------DL 50 . : . : . : . : . MKASEDLKKHGATVLTALGGILKKKGHHEAEIKPLAQSHATKHKI | | || | | | | | || HPGSAQLRAHGSKVVAAVGDAVKSIDDIGGALSKLSELHAYILRV score: 99 gap opens: 1 gap extensions: 5 num insertions: 6 num deletions: 0 num matches: 26 num mismatches: 63 num positive scores: 43 num negative scores: 46 percent similarity: 45.2632 percent identity: 27.3684
Data Races
Thread safety unknown!