χ二乗検定

練習用のデータでできそうな分析としてはχ二乗があった。

本当は残差分析という奴もあるらしいがまあ練習なのでちょっとほっとこう。

χ二乗検定は独立性の検定。

カテゴリカルデータ同士になんらかの関係があるかどうかを検定するものなので、例えば無作為に100人の外人さんを抽出したときに、人種と性別の間に一定の特徴があるかどうかみたいな検定を行うものだ。

よくある分析としては、エクセルなどの表を作成したそれぞれのセルがお互いに関係しているかどうかを検定するという考え方。

ここでいうと、ちょっと分かりにくいが性別によって人種に一定の傾向があるかどうかの検定ということになる。

まずは、Rで表を作成する。
これは読んで地のごとしtable というコマンドを使うみたい。

いつものように、カテゴリカルデータの定義づけも含めてコマンドを入力。

s<- read.csv(“yome.csv”,header=T,sep=’,’)
s$sex<-factor(s$sex,levels=0:1,labels=c(“male”,”female”)) s$race<-factor(s$race,levels=0:2,labels=c(“white”,”black”,’yellow’))

  • table(s$sex,s$race)

これでどうだ??

f:id:jigawa91:20110521221724p:image

イエス!!次にこのテーブルをデータフレームに設定して(ここれはvと名づけてみた)、chisq.testを使う。

f:id:jigawa91:20110521221725p:image

なんかできたぽいが、、、よくわからんメッセージ。

警告メッセージ:
In chisq.test(v) : カイ自乗近似は不正確かもしれません

グーグル先生!!

http://www.aichi-gakuin.ac.jp/~chino/psycstat/chapter7/sec7.html

どうやらtable の中の数が少なすぎると計算そのものはしてくれるけど、出てきた数字には信頼性がないという事みたい。

ふむふむそういう場合にはどうしたらいいのかしら??

どうやらこういう場合にはフィッシャーの正確検定というのをやるらしいね。これはオッズ比というヤツともカラムみたいだけど、今んとこは無視!!

フィッシャーの正確検定をやってみる。
関数はfisher.test

f:id:jigawa91:20110521221726p:image

できた。今日は調子がよいらしい。

ここの結果としては、人種と性別は独立しているということ。
なんとなく、データに偏りがないという認識でもいいのかな。

実際に使うときにまた考えてみることにしよっと。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です