Receiver Operating Characteristic curve
ROC曲線、受動者動作特性曲線、または等感受性曲線
よく理解してないけども、検定等の感受性を示すものらしく、比較なんかに利用されるらしい。。
横軸が、偽陽性率(False Positive Fraction/間違って陽性とする確率)、1−特異度(Specificity)
縦軸が、真陽性率(True Positive Fraction/正しく陽性とする確率)
つまり、曲線が左上の方にいった方がよいテストってことになる。点線>実線。
検定による陽性、陰性という判断の平均値と標準偏差から、両正規分布を作り、
任意の判断基準を設け、両正規分布を分割する。で、切り取られた面積から、TPFとFPFが求まる。
参考、
ROC解析の概要
http://misg.umin.ac.jp/netconf/netconf_3/netconf_3_roc1.html
IGOR Pro で、平均と標準偏差が
ga0 -> 2.34483, 1.13248
ga1 -> 4.46296, 1.17703
の正規分布を使って、ROCを描いてみた。
(それっぽい画が出来たので、おそらくあってるはず;^)
make/o/n=200 ga0=gauss((x-20)/10,2.34483,1.13248) make/o/n=200 ga1=gauss((x-20)/10,4.46296,1.17703) SetScale/I x -2,18,"", ga0,ga1 display ga0,ga1 ModifyGraph rgb(ga1)=(0,0,2^16-1) make/o/n=7 FPF,TPF cursor a, ga0, 6 cursor b, ga1, 6 FPF[0]=area(ga0,hcsr(a),inf) TPF[0]=area(ga1,hcsr(b),inf) cursor a, ga0, 5 cursor b, ga1, 5 FPF[1]=area(ga0,hcsr(a),inf) TPF[1]=area(ga1,hcsr(b),inf) cursor a, ga0, 4 cursor b, ga1, 4 FPF[2]=area(ga0,hcsr(a),inf) TPF[2]=area(ga1,hcsr(b),inf) cursor a, ga0, 3 cursor b, ga1, 3 FPF[3]=area(ga0,hcsr(a),inf) TPF[3]=area(ga1,hcsr(b),inf) cursor a, ga0, 2 cursor b, ga1, 2 FPF[4]=area(ga0,hcsr(a),inf) TPF[4]=area(ga1,hcsr(b),inf) cursor a, ga0, 1 cursor b, ga1, 1 FPF[5]=area(ga0,hcsr(a),inf) TPF[5]=area(ga1,hcsr(b),inf) cursor a, ga0, 0 cursor b, ga1, 0 make/o/n=7 FPF,TPF FPF[6]=area(ga0,hcsr(a),inf) TPF[6]=area(ga1,hcsr(b),inf) display TPF vs FPF
ROCのチャートを見た事あるので、多分組み込みの関数が用意されてるはず。 << IGOR Pro。