-11

我想计算字符串中每个位置的 4 个字母的频率。字母是 A、T、G、C

TGAGGTAGTAGTTTGTGCTGTTAT
TAGTAGTTTGTGCTGTTA
TGAGGTAGTAGTTTGTAC
TGAGAACTGAATTCCATAGG

所需的输出:

  Pos1  Pos2  Pos3  and so on. 
A 0     1
T 4     0
C 0     0
G 0     3

到目前为止,我使用了一个名为 Biostrings 的 R 包,它可以工作,但我想知道 perl 是否会这样做?

4

1 回答 1

7

为了记录,对于

x = "TGAGGTAGTAGTTTGTGCTGTTAT
TAGTAGTTTGTGCTGTTA
TGAGGTAGTAGTTTGTAC
TGAGAACTGAATTCCATAGG"

Biostrings解决方案是

library(Biostrings)
consensusMatrix(DNAStringSet(strsplit(x, "\n")[[1]]))

这对于数百万个序列来说将是快速的。

于 2014-06-18T03:44:56.047 回答