100000 回の確率で 2 つの異なる分布から描画しようとしています。残念ながら、for ループの何が問題なのかわかりませんsimulated_data
が、必要な 100,000 の値ではなく、1 つの値しか追加されません。
質問 1: どうすればこれを修正できますか?
質問 2: リスト内の 100,000 項目をループする必要がない、はるかに効率的な方法はありますか?
#creating a vector of probabilities
probabilities <- rep(0.99,100000)
#creating a vector of booleans
logicals <- runif(length(probabilities)) < probabilities
#empty list for my simulated data
simulated_data <- c()
#drawing from two different distributions depending on the value in logicals
for(i in logicals){
if (isTRUE(i)) {
simulated_data[i] <- rnorm(n = 1, mean = 0, sd = 1)
}else{
simulated_data[i] <- rnorm(n = 1, mean = 0, sd = 10)
}
}