Hatena::ブログ(Diary)

極めて個人的なメモ Twitter

Θ・)ノシ Bob#3のメモ帳です。
1972 | 12 |
2003 | 03 | 04 | 05 | 06 | 11 | 12 |
2004 | 01 | 02 | 03 | 04 | 05 | 06 | 09 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 09 | 10 | 11 |
2006 | 03 | 04 | 05 | 06 | 07 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 05 | 06 | 07 | 10 | 11 | 12 |
2008 | 01 | 02 | 04 | 05 | 08 | 09 | 10 | 11 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 |
2011 | 05 | 06 | 09 | 10 |
2012 | 02 | 03 | 05 | 06 | 08 |
2013 | 01 | 02 | 03 |
2015 | 02 |

2011-05-21

Rでクロス集計表の残差分析 Rでクロス集計表の残差分析を含むブックマーク Rでクロス集計表の残差分析のブックマークコメント

ぼやーっとツイッターを眺めていたら、@先生ツイートが目に留まった。



んん、ということはクロス集計表の残差分析がさくっとできそうだな。


クロス集計表の残差分析はあまりメジャーではないかもしれませんが、χ二乗検定の下位検定として位置付けられています。

端的に言うと「ある一つのセルの観測値が期待値に比べて有意に大きいか小さいか」を検定する手法です。


詳細な解説は下記を参照してください。

群馬大青木先生による解説

雪本さんによる解説


Rでの残差分析には id:langstat さんも挑戦しています(id:langstat:20110319)。

青木先生謹製関数もあります。 カイ二乗分布を用いる独立性の検定

ただ、どちらも調整済み残差を出力するところまでに留まっているので、ここではp値の算出と多重比較によるp値の調整までを行ってみたいと思います。

サンプルデータクロス集計表の有意差検定 から引用させていただきます。

# クロス集計表の入力
X <- matrix(c(58, 11, 10, 35, 25, 23), nrow=3,
            dimnames=list(c("賛成", "中立", "反対"), c("男性", "女性")))
X
#      男性 女性
# 賛成   58   35
# 中立   11   25
# 反対   10   23

# 比率(縦%)を確認
round(X / apply(X,2,sum) *100, 1)
#      男性 女性
# 賛成 73.4 42.2
# 中立 13.3 31.6
# 反対 12.7 27.7

# カイ二乗検定
RES <- chisq.test(X)

# 調整残差
RES$stdres
#           男性      女性
# 賛成  4.020507 -4.020507
# 中立 -2.478523  2.478523
# 反対 -2.377772  2.377772

# 残差分析のp値を算出
p.value.matrix <- pnorm(abs(RES$stdres), lower.tail=FALSE)*2
round(p.value.matrix, 4)
#        男性   女性
# 賛成 0.0001 0.0001
# 中立 0.0132 0.0132
# 反対 0.0174 0.0174

# ホルムの方法による有意水準の調整(多重比較)
Dim <- dim(X)
p.value.matrix.holm <- matrix(p.adjust(p.value.matrix), Dim[1], Dim[2])
dimnames(p.value.matrix.holm) <- dimnames(X) 
round(p.value.matrix.holm, 4)
#        男性   女性
# 賛成 0.0003 0.0003
# 中立 0.0528 0.0528
# 反対 0.0528 0.0528

探索的な分析に結構使い勝手が良いのですよねー。

michitamichita 2011/11/09 18:33 Rでクロス集計の残差分析のやり方を知りたくて,こちらのページを参照させていただきました。ありがとうございました。

ところで,一つ気になることがあります。上記の「比率(縦%)を確認」のところで,縦方向に比率を足しても100%にならないのです(apply(X / apply(X,2,sum) *100, 2, sum)として確かめました)

ところが,行と列を入れ替えると100%になります。
X <- matrix(c(58, 11, 10, 35, 25, 23), ncol=3, byrow=T)
apply(X / apply(X,1,sum) *100, 1, sum)

私はR初心者で,なぜなのか分からず悩んでいます。もし理由が分かれば教えていただければ幸いです。

r-de-rr-de-r 2012/02/23 17:13 記事も,コメントも,ずいぶん前のものなのだけど,スレ主にかわってコメント。だけど長くなるので,以下を参照
http://blog.goo.ne.jp/r-de-r/e/4420b56ef0d40eab23b5e725fae8fd28

bob3bob3 2012/02/24 01:36 お手数おかけしました。
週末に記事を修正します。

トラックバック - http://d.hatena.ne.jp/bob3/20110521

2011-05-08 針穴写真に挑戦中 このエントリーを含むブックマーク このエントリーのブックマークコメント

K10Dで針穴写真に挑戦中。

そのままだといまいちな感じだったのでトイカメラ風にエフェクトをかけています。


レンズ?は韓国製のPinhole Lens 025

画像の加工にはTOYCAMERA ANALOGCOLORを使いました。


f:id:bob3:20110508234007j:image:w512

f:id:bob3:20110508234008j:image:w512

f:id:bob3:20110508234009j:image:w512

f:id:bob3:20110508234010j:image:w512

f:id:bob3:20110508234011j:image:w512

f:id:bob3:20110508234012j:image:w512

f:id:bob3:20110508234013j:image:w512


センサーに付いたゴミが悩みの種…

トラックバック - http://d.hatena.ne.jp/bob3/20110508
Connection: close