R 拉动对齐字符位置
我使用成对对齐获得以下结果:R 拉动对齐字符位置,r,bioconductor,protein-database,R,Bioconductor,Protein Database,我使用成对对齐获得以下结果: > alignment <-pairwiseAlignment(pattern = canonical.protein, subject=protein.extracted) > alignment Global PairwiseAlignedFixedSubject (1 of 1) pattern: [448] DDWEIPDGQITVGQRIGSGSFGTVYKGKWHGDVAVKMLNVTAPTPQQLQAFKNEVGV.
> alignment <-pairwiseAlignment(pattern = canonical.protein, subject=protein.extracted)
> alignment
Global PairwiseAlignedFixedSubject (1 of 1)
pattern: [448] DDWEIPDGQITVGQRIGSGSFGTVYKGKWHGDVAVKMLNVTAPTPQQLQAFKNEVGV...FMVGRGYLSPDLSKVRSNCPKAMKRLMAE CLKKKRDERPLFPQILASIELLARSLPK
subject: [1] DDWEIPDGQITVGQRIGSGSFGTVYKGKWHGDVAVKMLNVTAPTPQQLQAFKNEVGV...FMVGRGYLSPDLSKVRSNCPKAMKRLMAECLKKKRDERPLFPQILASIELLARSLPK
score: -912.3752
获取模式和主题的完整字符串序列。但是,如何从对象中获取数字448和1作为整数?我需要使用这些数字,但似乎没有办法找到它们。我相信这些是路线的
起点,所以
start(pattern(alignment))
通过一个完全可复制的示例,您的问题会更清楚,例如:
library(Biostrings)
example(pairwiseAlignment)
aln <- pairwiseAlignment(AAString("PAWHEAE"), AAString("HEAGAWGHEE"),
substitutionMatrix = "BLOSUM50", gapOpening = 0, gapExtension = -8)
此外,该方法更适合于这些问题;无需订阅。由于可以通过对齐生成字符串,因此可以使用R的字符串函数。您可以执行substr(toString(pattern(alignment)),448448)来获得第448个字符。我不熟悉那个图书馆,所以可能有一种我不知道的内在方式。有关R中的字符串函数,请参见
library(Biostrings)
example(pairwiseAlignment)
aln <- pairwiseAlignment(AAString("PAWHEAE"), AAString("HEAGAWGHEE"),
substitutionMatrix = "BLOSUM50", gapOpening = 0, gapExtension = -8)
> aln
Global PairwiseAlignedFixedSubject (1 of 1)
pattern: [1] PA--W-HEAE
subject: [2] EAGAWGHE-E
score: 1
> start(subject(aln))
[1] 2