« MacBook Pro 2011で120Hzできた | 最新のページに戻る | [告知] 9/15にシンポジウムでトークします »

■ SDTのd'にエラーバーつけたい。

SDTのd'にエラーバーつけたい。d'ってのはZ(hit) - Z(fa)だから、基本的にはp(hit)とp(fa)のエラーバーさえ付けられればよい。つまりこれは比率のデータにエラーバー付けたい、ってやつの応用問題だ。

それなら以前ブログ(20090319)で書いたとおり、最尤法で作れるはずだ。

d-prime.png

ということでやってみた。たとえばhit = 27, miss = 4, fa = 6, cr = 23というデータがあったとして、これのlikelihoodは、

Lik = p(hit).^hit .* (1-p(hit)).^miss .* p(fa).^fa .* (1-p(fa)).^cr;

となる。これを縦軸p(fa), 横軸p(hit)でプロットすると左上のようになる。おなじ軸でd'がどう変わるかをプロットすると左下のようになる。likelihood/sum(likelihood)をd'の小さい順に並べると右上のようになる。d'の軸では均等にサンプルされてないからこんなへんな図になるけど、これをcumulativeにしてやると右下のようになるので、とりあえず信頼区間を得るという意味では目的は果たせる。もっとましな方法はありそうだけど。

そっかあ、たぶん、左の二つの図をnorminv(p)の軸で作ればよいのだな。でも面倒だからやらない。

とここまでやってwebを調べてみたら、論文を見つけた。"A Comparison of Three Methods for Calculating Confidence Intervals around D-Prime" (pdf) ほかにもRによるimplementationを見つけた。

というわけで、自分でやるもんじゃねえよな、ってオチ。


お勧めエントリ


月別過去ログ