2016-07-09 8 views
-4

私はRに疑問があります。シーケンス内のさまざまなパターンを見つけるためにstr_locate_all(seq、pattern)構文を使用しました。今、私は各パターンを数えたいのですが、シーケンス中の各パターンの繰り返しを数える方法を教えてもらえますか?シーケンス内のパターンを見つけるためのRプログラム

+4

を使用することができますこれは参考になります達成し、望ましい出力を達成する。例えば、seq = "AATTGGCCATGCATGC"パターン= "ATGC、CATG"の場合は –

+0

です。str_locate_all(seq、pattern)結果は位置8,11,12,12,15,13,​​16になります。これを実行して出力を得ることができました。今私は答えが2、2すなわち2 ATGCと2 CATGになるように繰り返しを数えたい – shrinirajesh

答えて

0

だけstr_locate_all

s <- "AATTGGCCATGCATGC" 
patterN <- c("ATGC", "CATG") 

library(stringr) 
setNames(sapply(str_locate_all(s, patterN), nrow), patterN) 

ATGC CATG 
    2 2 

の出力からrowsの数をカウントするsapplyを使用するか、あなたは、あなたがしたいものの一例を提供する場合は、str_count

setNames(str_count(s, patterN), patterN) 
関連する問題