http://d.hatena.ne.jp/MikuHatsune/20140603/1401798802
「STAP細胞が見つかるまでひたすら適当な細胞を生成し続けるプログラム」なんだが...
> 重複を許してサンプリングしてて、26^4通りの細胞が論理的に考えられるなか、サンプリングの速度を適当に計算して作成にかかる時間の分布が取れるはずなので、やる気のある研究者というか当事者はやってみたらいいんじゃないかな(適当
> 時間がかかりすぎるので30回くらいやってみた。
これは,生起確率が 1/26^4 の,負の二項分布なので,真っ正直にシミュレーションしなくても rnbinom 関数で,負の二項分布に従う乱数が簡単に得られる。1000万個で3秒弱。
> system.time({
+ p = 1/26^4
+ k = 1
+ r = rnbinom(n=10000000, size=k, prob=p)
+ print(mean(r)) # 標本平均
+ print(k*(1-p)/p) # 母平均
+ print(var(r)) # 標本分散
+ print(k*(1-p)/p^2) # 母分散
+ })
[1] 456869.3
[1] 456975
[1] 208819732410
[1] 208826607600
ユーザ システム 経過
2.761 0.012 2.761