Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 重复采样中字符串出现次数的计数_R_String_Counter - Fatal编程技术网

R 重复采样中字符串出现次数的计数

R 重复采样中字符串出现次数的计数,r,string,counter,R,String,Counter,我正在努力完成一道计算遗传学的家庭作业。当我已知的核苷酸频率(A,T,C,G)都是0.25,并且我对一个1000个字符长的字符串进行了1000次采样时,我需要计算二核苷酸“AA”出现的次数。最终确定“AA”二核苷酸的频率 SeqLength <- 1000 Nreps <- 1000 x <- c("A", "T", "C", "G") pi <- c(rep(0.25, 4)) counter <- 0 for (i in 1:Nreps){ X <

我正在努力完成一道计算遗传学的家庭作业。当我已知的核苷酸频率(A,T,C,G)都是0.25,并且我对一个1000个字符长的字符串进行了1000次采样时,我需要计算二核苷酸“AA”出现的次数。最终确定“AA”二核苷酸的频率

SeqLength <- 1000
Nreps <- 1000
x <- c("A", "T", "C", "G")
pi <- c(rep(0.25, 4))
counter <- 0

for (i in 1:Nreps){
    X <- sample(x, SeqLength, replace=TRUE, pi)
    for (j in 1:X - 1){
        if (j == "AA"){
            counter <- counter + 1
        }
    }
}
counter / Nreps

我似乎无法将我想在脑海中做的事情转化为功能代码。非常感谢任何帮助/指导/教训。谢谢

这里有一个方法。您可以使用
replicate
执行采样
Nreps
次数。对于每个取样序列,检查每个位置及其后面位置的核苷酸是否为
“A”
,并将结果逻辑相加以获得计数


SeqLength这里有一个方法。您可以使用
replicate
执行采样
Nreps
次数。对于每个取样序列,检查每个位置及其后面位置的核苷酸是否为
“A”
,并将结果逻辑相加以获得计数


SeqLength如果你的
X
AAA
,你有一个
AA
还是两个
AA
?问得好。假设2.如果你的
X
AAA
,你有一个
AA
还是两个
AA
?好问题。让我们说2。谢谢你!我理解你上面解释的一切。唯一让我好奇的是为什么用42做种子?明白了。非常感谢。非常感谢。我理解你上面解释的一切。唯一让我好奇的是为什么用42做种子?明白了。非常感谢。
Error in 1:X : NA/NaN argument
In addition: Warning messages:
1: In 1:X : numerical expression has 1000 elements: only the first used
2: In 1:X : NAs introduced by coercion