裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

ちょっと前の記事の数値が妥当だというシミュレーション

2012年06月08日 | ブログラミング

「前の記事」で指摘したことについて,その正しさを検証しておこう。

簡単なことだ。一行でできる。

> mean(replicate(1000000, sum(runif(100) < 0.1518244) >= 10))
[1] 0.950551

解説しておこうか?

runif(100) < 0.1518244

は,100 回試行して,設定した確率 0.1518244 を満たすかどうかの論理値ベクトル

sum(runif(100) < 0.1518244)

は,TRUE になった回数を数えれば,それは,アイテムを得られる回数

sum(runif(100) < 0.1518244) >= 10

は,得られたアイテムが 10 個以上であるかどうかの論理ベクトル

replicate(1000000, sum(runif(100) < 0.1518244) >= 10)

は,それを 1000000 回繰り返す。

mean(replicate(1000000, sum(runif(100) < 0.1518244) >= 10))

は,そのうち,成功した割合(0/1ベクトルの平均は,1である割合のこと)を表す。

結局,確率が 0.1518244 のときは,10 個以上のアイテムを得られる確率が 0.950551 ということ。

この数値は,試行ごとに変わるが 0.95 前後の値になることは簡単に確かめることができる。
正規近似は,近似に過ぎないこともわかる。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ブログ記事の免責について--... | トップ | ダメ出し:ダミー変数の作成 »
最新の画像もっと見る

コメントを投稿

ブログラミング」カテゴリの最新記事