计算R中两个基因序列之间的百分比差异

时间:2011-09-03 15:41:43

标签: r dna-sequence

我无法在问题或R包中找到这个,希望直截了当。

采取两个假设的基因序列:

Sequence A: ATG CGC AAC GTG GAG CAT
Sequence B: ATG GGC TAC GTG GAT CAA

我想让R代码产生两个序列之间单核苷酸的百分比差异(例如15%)。

有什么想法?提前谢谢。

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题,那么你只需要做一个简单的字符串比较。例如,

R> seq1 = c("A", "T", "G", "C", "G", "C", 
            "A", "A", "C", "G", "T", "G", 
            "G", "A", "G", "C", "A", "T")
R> seq2 = c("A", "T", "G", "G", "G", "C", 
            "T", "A", "C", "G", "T", "G", 
            "G", "A", "G", "C", "A", "A")
R> seq1 != seq2
 [1] FALSE FALSE FALSE  TRUE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE FALSE
[13] FALSE FALSE FALSE FALSE FALSE  TRUE
R> sum(seq1 != seq2)/length(seq1)*100
[1] 16.67

要以上述格式获取数据,请查看strsplit函数。