以下の 3 つのフィールドを区別するために R で正規表現を考え出すのに苦労しています
[C/T]GA, A[T/C]G, GA[G/A]
基本的に、上記のコドンの各カテゴリ (1 位、2 位、3 位) に SNP がいくつ含まれるかを調べたいと考えています。
よろしくお願いします。
ウペンドラ
開口部のインデックスを見つけるだけで十分[
ですか? それから
> x = c("[C/T]GA", "A[T/C]G", "GA[G/A]", "GAG")
> regexpr("[", x, fixed=TRUE)
1、2、3、または -1 を返します (見つからない場合)。
私はあなたが3つの異なるカテゴリを数えたいと思っていると思います:
codons <- paste0( sample(c("G", "C", "T", "A"), 1000, repl=TRUE),
sample(c("G", "C", "T", "A"), 1000, repl=TRUE),
sample(c("G", "C", "T", "A"), 1000, repl=TRUE) )
ev1 <- length( grep("^[CT]GA", codons) )
# number matching either CGA or TGA
ev2 <- length( grep("^A[TC]G", codons) )
# number matching either ATG or ACG
ev3 <- length( grep("^GA[GA] ", codons) )
# number matching either GAG or GAA
head(codons)
> (ev1 <- length( grep("^[CT]GA", codons) ) )
[1] 22
> (ev2 <- length( grep("^A[TC]G", codons) ) )
[1] 26
> (ev3 <- length( grep("^GA[GA]", codons) ) )
[1] 43