2016-09-26 5 views
0

Rの関数を書いて、n i.i.dベルヌーイ確率変数X1、X2、...、Xn〜B(1、π)の集合を生成しようとしています。n i.i.dベルヌーイ変数のサンプルを生成するR

M = 1000のランダムサンプルを生成する。 n = 10かつpi = 0.4の場合。

コードの開始に問題があります。もし誰かが助けてくれれば、それは大変に感謝しています。

rbinom(n=10,prob=.4,size=1) 

は今、私はrbinom機能を介して実行これらのサンプルの1000の行列の中にこれらの変数を組み立てたい:ここ

は、私はこの時点に実行したものです

+0

あなたはどこにも全く得ていますか? '?rbinom'と'?runif'は共に '?replicate'と同じように便利です(後者は本当に必要ではありません)。便宜上、あなたの希望する出力の構造(例:リスト、行方向行列、列方向行列、...?)の例を投稿できますか?便宜上 'M'と' n'の値は小さいですか? –

+0

私は今すぐRを学ぶ過程にあると申します。私はrbinomを実行し、出力を受け取った:[1] 26 47 38 48 37 42 42 44 39 49.私は問題を実行している列のワイズ行列にその出力を格納したい。 rbinomコマンドで作成された合計1000個のサンプルがあるはずです – pc8807

+0

謝罪する必要はありません。あなたはあなたの質問を編集して*あなたが 'rbinom'をどのように実行したかを指定できますか?(つまり、どの引数を使用しましたか?結果は行列に変換されますが、ベルヌーイが私に描くような結果は表示されません(ヒント、 'size = 1')! –

答えて

1

あなたがこれまでに何をやったか撮影:

set.seed(101) ## for reproducibility 
rr <- replicate(1000,rbinom(n=10,prob=.04,size=1)) 

は1000個のサンプルを作成します。

dim(rr) 
## [1] 10 1000 
mean(rr) 
## [1] 0.0411 

つまり、これは10行×1000列です。必要に応じてt()を使用してトランスポーズすることができます。 replicate()呼び出しでsimplify=FALSEと指定すると、代わりに長さ10のベクトルのリストが得られます。

(あなたの質問はあなたが0.04または0.4の確率をするかどうかに矛盾しているが、あなたがあなた自身のためにそれを整理することができるはずです。)

この特定の問題のために、あなたはまた、使用することができ

matrix(rbinom(10000,prob=0.04,size=1),nrow=10) 

または

matrix(as.numeric(runif(10000)<0.04),nrow=10) 
関連する問題