簡體   English   中英

R中的嵌套for循環

[英]Nested for-loops in R

好的,所以我是R的新手,在實現嵌套的for循環進行仿真時遇到了麻煩。 該代碼的目標是對於兩個beta分布,每個結果的概率大於1/2,都將增加一個計數器。 然后根據該計數器,通過除以N(總體大小)來計算概率。 但是,我希望這可以在n個值的范圍內運行,並為每個n值創建這些概率(p)的分布。 我在執行此操作時遇到了困難。 任何幫助將不勝感激!!

內部for循環的代碼:

    n = 5000
    counter = 0
    x = rbeta(n,3,1)
    y = rbeta(n,3,1)

    for (i in 1:n)
    {
      if((y[i]-x[i] >= 1/2))
      {
       counter = counter +1
      }
    }
    p = counter / n

如果要計算p ,則可以做p <- mean( y - x > 1/2) 為此,請對n的值范圍進行創建,創建一個值n.range的向量,然后執行

n.range <- seq(100, 5000, 100)
p <- rep(NA, length(n.range))
for(n in n.range){
    x <-  rbeta(n,3,1)
    y <-  rbeta(n,3,1)
    p[n == n.range] <- mean(y - x > 1/2)
}
hist(p)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM