さんだーさんだ!(ブログ版)

2015年度より中高英語教員になりました。2020年度開校の幼小中混在校で働いています。

検定力分析について(前編)

今日の授業でなんとなく検定力分析について理解が深まった気がしたから書いてみた。ら、思った以上に時間かかって、やっぱ理解なんて深まってないんじゃないかって気がしてきた。とりあえず前編は、検定力の前段階まで。


〜〜〜〜〜
「そろそろ卒論でもやるかー」

『ずいぶんのんびりしてるね…なにについてやるの?』

「あ、先輩。最近ニュースで、『小中教員1万4000人削減求める 財政制度審 :日本経済新聞』ってのを見たんです。『少人数学級が必ずしも学力向上などにつながっていない』っていうのは驚きだから、データを集めてみたいなあと思って。」

『面白そうだね。じゃあその場合、何と何との相関関係をみればいいかな?』

「うーん…」

『ははは、ちょっとむずかしかったかな。ここで必要になるのは、1クラス辺りの人数つまりクラスサイズと、そのクラスの学力データだね』

「あ、そのレベルでいいんですか。学力にはクラスサイズ以外の要因も絡んでるから、まさか単回帰でやるとは考えてもいませんでした」

『ぐぬ…。じゃあたくさん変数入れて重回帰すればいいんじゃないかな』

「僕学部生なのでそんないっぱい集めるの厳しいので、今言われたやつと「教師力」くらいにしておきます」

『(なんだこいつ…)じゃあ「クラスサイズ: x1」「教師力: x2」「クラス学力: y」だね。あとは何をすればいい?』

有意差を出す!!!!」

『おぅふ…。もっと他に言い方ないの』

「帰無仮説を設定して、それを棄却する!有意水準は5%で!」

『あんまり教育的じゃないけど、まあいいや。じゃあとりあえず、ちょっと仮説検定のおさらいをしておこう。今回の研究における「帰無仮説」とは何かな?』

「『クラスサイズと教師力は、学力テストとは無相関である』って感じですか。」

『そのとおりだね。より詳しくは、「x1の偏回帰係数b1 = x2の偏回帰係数b2 = 0である」とも言うらしいよ(p.257)』

「なんですかその(p.257)って」

『「心理統計学の基礎」は名著だなあ*1

「???」

『とにかく、じゃあこの帰無仮説を検定するための具体的な手続きはどうなるかな?』

「えっと、帰無仮説が正しいとした時のF分布(①)を出して、同時に今回のデータからF統計量(②)を求める。そしたら、②が*2、①から得られる確率を求める。それが有意水準5%を下回ってたら、今回のデータは①から求められたと考えるには確率的にありえないほど極端な値だったってことだから、帰無仮説を棄却する」

『おおいい感じだね。言い換えると、①において下側確率95%となる点(それより大きなF値を取る確率は5%)におけるF値を出して、データから得られた②がそれより大きいければ帰無仮説は棄却される、ということだね』

「(言い換えただけじゃん…)」

『じゃあF分布を描くには何が必要?』

「自由度(=df)1とdf2ですね。df1はここでは変数が2つなので2、df2はN-2-1です。あ、Nどうしましょう。」

『Nってなんだっけ?』

「ハ?サンプルサイズだろ何言ってんの?」

『え?や、読者のためっていうか…』

「ああ、びっくりした。無能マンかと思いましたよ」

『む、無能マン…?』

「何人の人からデータを取ったかを表す、サンプルサイズ、ですよね?」

『(なんかこいつ怖いな…)じゃ、じゃあとりあえずN=50としてみようか』

「するとF値の分布はこんな感じですね」


 ◯図1 df1=2, df2=47のf分布*3

> x <- c(0:1)
> curve(df(x, 2, 47), type="l", from=0, to=10, xlab="F値", ylab="確率密度")
> abline(0,0)

「ちなみに、"x <- c(0:1)"ってどういう意味があるんですか?」

『…』

「急に聞こえないフリ!」

『さて*4、この分布において、棄却域はどう表せる?』

「"qf(.95, 2, 47)"を動かすと、3.195と出るので、この値以上のところが棄却域ですね」


 ◯図2 図1+棄却域

> curve(df(x, 2, 47), type="l", from=0, to=10, xaxt="n", xlab="F値", ylab="確率密度")
> abline(0,0)
> xvals <- seq(3.195, 10, length = 10)
> dvals <- df(xvals, 2, 47)
> polygon(c(xvals,rev(xvals)),
+        c(rep(0,10),rev(dvals)),col="gray")
> axis(1, c(0, 3.195, 10), c("0", "3.195", "10"))

『そうだね。あとはF値を計算して、その値が3.195より大きければ帰無仮説を棄却、小さければ有意差なし、だね。』

「うーん…」

『どうしたんだい?』

「このグラフって、帰無仮説の下での分布ですよね?」

『そうだね』

「つまり間違ってると思って設定したグラフ、ですよね」

『そうだね。棄却されたらいいなって思って設定したんだね』

「なんかこれって、フラれるって分かってるのに告白するみたいなもんじゃないですか?そんで涙目になりながら『やっぱりフラれたじゃないかよっしゃ!』みたいな」

『ん?』

「『あの子の好意は棄却された!』みたいな」

『ちょっと何言ってるかわかんないです』

「すいません僕もわかんなかったです。僕の違和感はつまりですね、今回設定した5%棄却域って、『正しくないはずの帰無分布を正しいものと仮定して、その時には得られづらいような極端な値』の範囲ですよね」

『そうだね』

「この範囲にF値が入れば、「正しくないはずの帰無仮説からこんな極端な値が得られるのは稀だから、やっぱり帰無仮説は正しくないだろう」って考えられるので、つまり、『正しくない仮定を置いた時に、それを「正しくない」と正しく判断できる確率』ですよね」

『うんうん』

「じゃあその反対で、『正しい仮定を置いた時に、それを「正しくない」と誤って判断してしまう確率』も考えられますよね」

『その通りだね。今回描いてくれたグラフを使って説明するなら、3.195より大きなF値が得られれば帰無仮説は棄却される。逆に言えば、F値が3.195より小さければ、帰無仮説は棄却されない=クラスサイズ・教師力と学力とは無相関とは言えない、という結論になる』

「(あの子の好意は棄却されなかった!って言えたら幸せなのにな…)」

『ただし!無相関って、厳密に言えばありえないよね。母相関係数ρ(ロー)=0.000000000...とずーっと0を重ねれば、なんらか別の数字が現れるはずだ』

「(つまりあの子は俺に完全に無関心ってことはない!!?)」

『つまり、帰無仮説が間違っているのはある意味で当たり前ってことだね。「本当のρ」、これは僕らには決して知りえないものだけど、「本当のρ」≠0。ここで考えなくちゃいけないのは、「本当のρ」の下でのF分布において、「たまたま3.195より小さいF値が得られる」ってことがありえるってことなんだ』

「(本当は俺のこと好きなのに、フるなんてことがあるのか…)」

『ちょっとわかりづらくなるからそろそろその例えやめて』

「あハイ」

『ただしここで「本当のρ」がいくつかなんてことは分かり得ない。まあ、分かってないから研究するんだけど。そこで適当に「本当のρ」を仮定して、その時に正しく帰無仮説が棄却される確率を考えることができるんだ。それを統計学の用語でpower=検定力、と言うよ。』

「検定力分析!」

『知ってんのかい』

「ただちょっとここまでで疲れちゃったので、続きはまた今度でお願いします」

『あハイ』

てーことで、後半に続く!(こんな時間かかるとは思わなかった。やっぱり何もわかってないことがわかってしまうことだ。)

*1:とは言えこの辺は自信ないので間違い発見されたらご指摘下さいm(_ _)m

*2:正確には、「②およびそれより極端な値」が

*3:なぜかグラフ中にtitle(main="タイトル")とやろうとするとグラフがカクカクする…

*4:ホントに分からないのでどなたか詳しい方お教え下さいm(_ _)m