シミュレーションを使ってみる

 さて、無事に検定を通過した精鋭たち。中にはp<0.0000001とかを達成してしまったりもします。
 しかし、数学的に差があっても臨床的に意味のある差である保証はどこにもありません。というわけでどれくらいの目に見える差になるのかシミュレーションをしてみましょう。・・・残念ながらここからはプログラムを使わないといけません。

ここでは多くの人が導入しやすいStanを使います。BUGSとかもあるのですが更新が止まっていてこの先どうなるか分かりません。C++はちょっとめんどくさそうです。PyStanも導入を試みましたが私はうまく行ってません。。StanのプログラムはNUTSという種類のシミュレーションらしく(あやふや)、Python(pystan)やR(Rstan)ほかで使えます。たぶんRがとっつきやすいと思います。

そしてstanのプログラムを探します・・・自作してもよいのですがみんながそんな苦労する必要はないと思います。。だいたいはベイズ推計の本を買うと付録についてきたりします。よく使うものとしては数値の比較とクロス集計表の比較があります。

数値の比較だと平均値の差や、無作為抽出した際に取り出せる値の期待値が分かります。有意差があったときに、2群でどれくらいの差が期待できるか分かります。10点満点のスコアで5点と5.002点の差とかになると有意差があっても微妙ですよね・・・。

ここで意味のある差がでると

AとBでは効果の差があって、95%の確信度で30%以上の差がありました。どやぁぁぁぁぁ!と書いてちょっとイケてるんじゃないかと思いませんか(βエラーは10〜20%まで許容されるので確信度は80%以上で良さげです)。差があった(p<0.05)だけだと実際のイメージがつかないので「この論文って役に立つの立たないの?」ということになります。論文に載っているのに実感が全くわかない比較って数学的な問題だけしか検討されてないことが多いです。実感がわく比較はモデリングがしっかりしていて臨床的な意義を検討して最後に統計をしていることが多いような印象です。ただ、母集団の制約から高度に数学的な検討を求められることも多いように感じられます。

この記事が気に入ったらサポートをしてみませんか?