2016-04-04 19 views
0

シータごとにkの長さのシーケンスを作成し、それらを行列の次元nrep x kで構築するために、二項分布からthetaパラメータを使ってnrep回を描きたい。どのようにしてRの結果の行列を作ることができますか?n回の複製でランダムな2項シーケンスをシミュレートするR

以下のコードは、異なるシータからそれぞれ(nrep * k)を引きます。つまり、シーケンスは同じシータのk長ではありません。 [私の目的はnrep回二項確率シータ長kを描くことである。]

### simulate some binary sequence data in matrix ted (1000 x 20) 
nrep <- 1000 
s <- 7; k <- 20 
theta <- rbeta(nrep, shape1=s+1, shape2=k-s+1) 

ted <- 0 
ted <- matrix(rbinom(k * nrep, 1, theta), ncol = k, nrow = nrep) 
hist(ted) 

答えて

0

rbinomはあなたが

ted <- matrix(rbinom(k * nrep, 1, rep(theta, k)), ncol = k, nrow = nrep) 
+0

を達成するためにrep(theta, k)を使用することができますので、これは素晴らしいソリューション – rrg

+0

で、パラメータprobの上にベクトル化されました@ rrg、まだ効率的なソリューションか他のソリューションを探していますか?さもなければ、答えを受け入れ、おそらくそれをアップウィートすることが適切であろう。 – Julius

関連する問題