[英]R How to visualize pairwise alignment
如何可视化两个序列的完全比对?
library(Biostrings)
s1 <-DNAString("ACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGTTTTCACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGTTTTCAAGAAGACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGTTTTCAAG")
s2 <-DNAString("GTTTCACTACTTCCTTTCGGGTAAGTAAATATATGTTTCACTACTTCCTTTCGGGTAAGTGTTTCACTACTTCCTTTCGGGTAAGTAAATATATAAATATATAAAAATATAATTTTCATCAAATATATAAATATATAAAAATATAATTTTCATCAAATATATAAAAATATAATTTTCATC")
pairwiseAlignment(s1,s2)
输出:
Global PairwiseAlignmentsSingleSubject (1 of 1)
pattern: [1] ACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGT--TTTCAC---...CTTCACCAGCTCCCTGGCGGTAAGTTG-ATCAAAGG---AAACGCAAAGTTTTCAAG
subject: [1] GTTTCACTACTTCCTTTCGGGTAAGTAAAT-ATATGTTTCACTACTTCCTTTCGGGTA...TATATAAATATATAAAAATATAATTTTCATCAAATATATAAAAATATAATTTTCATC
score: -394.7115
在这里,仅显示了部分对齐? 您知道绘制或打印路线的任何现有功能吗?
您可以在?pairwiseAlignments
下找到有关如何提取对齐的模式和主题序列的信息和详细信息。
这是一个基于您提供的样本数据的示例:
将成对对齐方式存储在PairwiseAlignmentsSingleSubject
对象中
alg <- pairwiseAlignment(s1,s2)
提取对齐的模式和主题序列,并将它们合并到DNAStringSet
对象中。
seq <- c(alignedPattern(alg), alignedSubject(alg))
您可以使用as.character
访问完整序列
as.character(seq) [1] "ACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGT--TTTCAC--------TTCACCAGCTCCCTGGCGGTAAGTTGATC---AAAGG---AAACGCAAAGTTTTCAAGAAGACTTCACCAGCTCCCTGGCGGTAAGTTG-ATCAAAGG---AAACGCAAAGTTTTCAAG" [2] "GTTTCACTACTTCCTTTCGGGTAAGTAAAT-ATATGTTTCACTACTTCCTTTCGGGTAAGTGTTTCACTACTTCCTTTCGGGTAAGTAAATATATAAATATATAAAAATATAATTTTCATCAA-ATATATAAATATATAAAAATATAATTTTCATCAAATATATAAAAATATAATTTTCATC"
似乎alignedPattern
和alignedSubject
是最近才添加到Biostrings
。 或者你可以做
seq <- c(aligned(pattern(alg)), aligned(subject(alg)))
但请注意,这会修剪全局对齐的序列(请参阅详细信息 )。
有一个不错的R / Bioconductor软件包DECIPHER
,它提供了一种在Web浏览器中可视化XStringSet
数据的方法。 它会在底部自动添加颜色编码和共识序列。 在你的情况下,你会做
library(DECIPHER) BrowseSeqs(seq)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.