×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
Rで対応分析…の準備
CRAN Task Viewのまとめ http://cran.r-project.org/web/views/Psychometrics.html
# 対応パッケージと関数
# MASSパッケージのcorresp, mca
# 金先生の連載 http://mjin.doshisha.ac.jp/R/26/26.html
# 多重対応分析mca関数の例 http://133.100.216.71/R_analysis/analysis_corresp02.html
# 対応分析corresp関数の例 http://133.100.216.71/R_analysis/analysis_corresp01.html
# Rで学ぶデータサイエンス1 カテゴリカルデータ解析 第9章 対応分析 p130もMASSパッケージの関数の解説
# caパッケージのca, mjca
# cran: http://cran.r-project.org/web/packages/ca/index.html マニュアルpdf http://cran.r-project.org/web/packages/ca/ca.pdf
# Nenadic, O., & Greenacre, M. (2007). Correspondence Analysis in R, with Two- and Three-dimensional Graphics: The ca Package. Journal of Statistical Software, 20, 1-13. http://www.jstatsoft.org/v20/a03/paper
# Quick-Rの実行例: http://www.statmethods.net/advstats/ca.html
# CARME-N.ORG: http://www.carme-n.org/?sec=ca
# 中山 (2009). 対応分析によるデータ解析 http://www.kwansei.ac.jp/s_sociology/attached/6779_56340_ref.pdf
# FactMineRパッケージのCA, MCA関数
# cran: http://cran.r-project.org/web/packages/FactoMineR/index.html マニュアルpdf http://cran.r-project.org/web/packages/FactoMineR/FactoMineR.pdf
# 本家HP: http://factominer.free.fr/book/index.html
# 対応分析の例: http://factominer.free.fr/classical-methods/correspondence-analysis.html
# 多重対応分析の例: http://factominer.free.fr/classical-methods/multiple-correspondence-analysis.html
# Le, S., Josse, J., & Husson, F. (2008). FactoMineR: An R Package for Multivariate Analysis. Journal of Statistical Software, 25, 1-18. http://factominer.free.fr/docs/article_FactoMineR.pdf
# homalsパッケージのhomals関数
# cran: http://cran.r-project.org/web/packages/homals/ マニュアルpdf http://cran.r-project.org/web/packages/homals/homals.pdf
# Leeuw, J., & Mair, P. (2009). Gifi methods for optimal scaling in R: The package homals. Journal of Statistical Software, 31, ... http://www.jstatsoft.org/v31/i04/paper
# これも中身は同じ Leeuw, J., & Mair, P. (2008). Homogeneity analysis in R: The package homals. Journal of Statistical Software http://preprints.stat.ucla.edu/525/homalsR.pdf
# その他
# 正準対応分析? http://preprints.stat.ucla.edu/531/anacor.pdf
# 青木先生の数量化3類の関数 http://aoki2.si.gunma-u.ac.jp/R/qt3.html
# ダミー変数を生成するmake.dummy関数は大変便利。感謝。source("http://aoki2.si.gunma-u.ac.jp/R/src/make.dummy.R", encoding="euc-jp")
## 覚書
# 足立浩平 (2006). 多変量データ解析法――心理・教育・社会系のための入門―― ナカニシヤ出版
# 第13章 数量化分析 p125 より
# 相対尺度法 (dual scaling) 、最適尺度法 (optimal scaling) 、等質性分析 (homogenuity analysis) 、対応分析 (corespondence analysis) 、多重対応分析・多重応答分析・同コレスポンデンス分析 (multiple correspondence analysis) 、数量化3類 (quantification method III, third method of quantification) 、主成分尺度分析 (principal components of scale analysis) 、質的データの要因分析 (factorial analysis of qualitative data) は本質的に同じ方法である。
# 対応分析と多重対応分析は少し性質が異なる
# 対応分析は分割表を直接解析対象にする。標準化比率にしたデータに主成分分析をすることに等しい
# カテゴリカル主成分分析も同じようなもの (?) 。ダミー変数を使っているだけ (?)
# カテゴリカル回帰は個々の因子変数を数量化した線形重回帰 (?)
# 数量化III類 = カテゴリカル変数の主成分分析 = 対応分析
# 数量化I類= 独立変数が連続変数で、従属変数がカテゴリカル変数。説明変数 (独立変数) がカテゴリカル変数のときの重回帰と同じ
# 数量化II類 = 独立変数がカテゴリカル変数で、従属変数もカテゴリカル変数。説明変数 (独立変数) がカテゴリカル変数のときの判別分析と同じ
# 多重対応分析と数量化3類は数値結果が異なる。たぶん等質性分析も異なる
# 多重対応分析はYesを1、No を1のデータをつくる これをそのまま主成分分析しても同じ個体得点が得られる
# 数量化はYesを1、Noを0のデータをつくる
# 基本的な目的と解釈
# 類似したパターンのサンプル (回答者) 、類似したパターンのカテゴリー (項目) を近くに移動する
# 近くに位置づけられるカテゴリーどうし・個体どうしは互いに等質、似ている
# 40代の人は健康に関心がある
# 次元の解釈
# 次元の両極に位置するカテゴリーを比較する
## Rでカテゴリカル分析のリンク
http://www.unt.edu/rss/class/Jon/R_SC/
# かなりの充実度。海外はすごいな
CRAN Task Viewのまとめ http://cran.r-project.org/web/views/Psychometrics.html
# 対応パッケージと関数
# MASSパッケージのcorresp, mca
# 金先生の連載 http://mjin.doshisha.ac.jp/R/26/26.html
# 多重対応分析mca関数の例 http://133.100.216.71/R_analysis/analysis_corresp02.html
# 対応分析corresp関数の例 http://133.100.216.71/R_analysis/analysis_corresp01.html
# Rで学ぶデータサイエンス1 カテゴリカルデータ解析 第9章 対応分析 p130もMASSパッケージの関数の解説
# caパッケージのca, mjca
# cran: http://cran.r-project.org/web/packages/ca/index.html マニュアルpdf http://cran.r-project.org/web/packages/ca/ca.pdf
# Nenadic, O., & Greenacre, M. (2007). Correspondence Analysis in R, with Two- and Three-dimensional Graphics: The ca Package. Journal of Statistical Software, 20, 1-13. http://www.jstatsoft.org/v20/a03/paper
# Quick-Rの実行例: http://www.statmethods.net/advstats/ca.html
# CARME-N.ORG: http://www.carme-n.org/?sec=ca
# 中山 (2009). 対応分析によるデータ解析 http://www.kwansei.ac.jp/s_sociology/attached/6779_56340_ref.pdf
# FactMineRパッケージのCA, MCA関数
# cran: http://cran.r-project.org/web/packages/FactoMineR/index.html マニュアルpdf http://cran.r-project.org/web/packages/FactoMineR/FactoMineR.pdf
# 本家HP: http://factominer.free.fr/book/index.html
# 対応分析の例: http://factominer.free.fr/classical-methods/correspondence-analysis.html
# 多重対応分析の例: http://factominer.free.fr/classical-methods/multiple-correspondence-analysis.html
# Le, S., Josse, J., & Husson, F. (2008). FactoMineR: An R Package for Multivariate Analysis. Journal of Statistical Software, 25, 1-18. http://factominer.free.fr/docs/article_FactoMineR.pdf
# homalsパッケージのhomals関数
# cran: http://cran.r-project.org/web/packages/homals/ マニュアルpdf http://cran.r-project.org/web/packages/homals/homals.pdf
# Leeuw, J., & Mair, P. (2009). Gifi methods for optimal scaling in R: The package homals. Journal of Statistical Software, 31, ... http://www.jstatsoft.org/v31/i04/paper
# これも中身は同じ Leeuw, J., & Mair, P. (2008). Homogeneity analysis in R: The package homals. Journal of Statistical Software http://preprints.stat.ucla.edu/525/homalsR.pdf
# その他
# 正準対応分析? http://preprints.stat.ucla.edu/531/anacor.pdf
# 青木先生の数量化3類の関数 http://aoki2.si.gunma-u.ac.jp/R/qt3.html
# ダミー変数を生成するmake.dummy関数は大変便利。感謝。source("http://aoki2.si.gunma-u.ac.jp/R/src/make.dummy.R", encoding="euc-jp")
## 覚書
# 足立浩平 (2006). 多変量データ解析法――心理・教育・社会系のための入門―― ナカニシヤ出版
# 第13章 数量化分析 p125 より
# 相対尺度法 (dual scaling) 、最適尺度法 (optimal scaling) 、等質性分析 (homogenuity analysis) 、対応分析 (corespondence analysis) 、多重対応分析・多重応答分析・同コレスポンデンス分析 (multiple correspondence analysis) 、数量化3類 (quantification method III, third method of quantification) 、主成分尺度分析 (principal components of scale analysis) 、質的データの要因分析 (factorial analysis of qualitative data) は本質的に同じ方法である。
# 対応分析と多重対応分析は少し性質が異なる
# 対応分析は分割表を直接解析対象にする。標準化比率にしたデータに主成分分析をすることに等しい
# カテゴリカル主成分分析も同じようなもの (?) 。ダミー変数を使っているだけ (?)
# カテゴリカル回帰は個々の因子変数を数量化した線形重回帰 (?)
# 数量化III類 = カテゴリカル変数の主成分分析 = 対応分析
# 数量化I類= 独立変数が連続変数で、従属変数がカテゴリカル変数。説明変数 (独立変数) がカテゴリカル変数のときの重回帰と同じ
# 数量化II類 = 独立変数がカテゴリカル変数で、従属変数もカテゴリカル変数。説明変数 (独立変数) がカテゴリカル変数のときの判別分析と同じ
# 多重対応分析と数量化3類は数値結果が異なる。たぶん等質性分析も異なる
# 多重対応分析はYesを1、No を1のデータをつくる これをそのまま主成分分析しても同じ個体得点が得られる
# 数量化はYesを1、Noを0のデータをつくる
# 基本的な目的と解釈
# 類似したパターンのサンプル (回答者) 、類似したパターンのカテゴリー (項目) を近くに移動する
# 近くに位置づけられるカテゴリーどうし・個体どうしは互いに等質、似ている
# 40代の人は健康に関心がある
# 次元の解釈
# 次元の両極に位置するカテゴリーを比較する
## Rでカテゴリカル分析のリンク
http://www.unt.edu/rss/class/Jon/R_SC/
# かなりの充実度。海外はすごいな
PR
library(Design)
result <- lrm(y ~ x1 + x2, dat)
summary(result)ではエラーで
result としなくてはいけない
Nagelkerke's R二乗、tau, gamma, 回帰係数、他色々出る。
glm関数と同じだが…
result$deviance で尤度、result$linear.predictorsで予測子など。
str(result) を見るといろいろ調べられるようだが、今日はこの辺にしてやろう
result <- lrm(y ~ x1 + x2, dat)
summary(result)ではエラーで
result としなくてはいけない
Nagelkerke's R二乗、tau, gamma, 回帰係数、他色々出る。
glm関数と同じだが…
result$deviance で尤度、result$linear.predictorsで予測子など。
str(result) を見るといろいろ調べられるようだが、今日はこの辺にしてやろう
# 分析実行
result <- glm(y~x1+x2, dat, family=binomial)
# 予測子を取り出してx軸のデータにする
xaxis1 <- result$linear.predictor
## yaxis1 <- result$fitted.values #予測値をとりだす (別にここではいらない)
# 曲線描画用のx軸データを生成する。lengthを多く指定すればよりなめらか
xaxis2 <- seq(from=min(xaxis1), to=max(xaxis1), length=200)
# 曲線用の予測値データを生成する
yaxis2 <- exp(xaxis2)/(1+exp(xaxis2)) #生成データから予測値を出す。分子に注意
# プロット
plot(xaxis1, dat$y) #元の予測子と実測データをプロット
lines(xaxis2, yaxis2) #生成データで曲線を描画する
# 少しきれいにしたプロット
pdf("LoGraph.pdf", family = "Japan1GothicBBB") #pdfファイルの指定と日本語フォント指定
plot(xaxis1, dat$y, pch = ifelse(dat$y=="1", 16, 1), xlab = "独立変数", ylab = "従属変数") #pch=...で1は黒丸、0は白丸に指定。xlabでx軸の名前、ylabでy軸の名前を指定
lines(xaxis2, yaxis2) #生成データで曲線を描画する
dev.off() #作図デバイスの終了
# pdfで出力。
グラフ
# jpegで出力。pdfの方が軽くてきれい
なお、元データはRによる統計解析p.181より
result <- glm(y~x1+x2, dat, family=binomial)
# 予測子を取り出してx軸のデータにする
xaxis1 <- result$linear.predictor
## yaxis1 <- result$fitted.values #予測値をとりだす (別にここではいらない)
# 曲線描画用のx軸データを生成する。lengthを多く指定すればよりなめらか
xaxis2 <- seq(from=min(xaxis1), to=max(xaxis1), length=200)
# 曲線用の予測値データを生成する
yaxis2 <- exp(xaxis2)/(1+exp(xaxis2)) #生成データから予測値を出す。分子に注意
# プロット
plot(xaxis1, dat$y) #元の予測子と実測データをプロット
lines(xaxis2, yaxis2) #生成データで曲線を描画する
# 少しきれいにしたプロット
pdf("LoGraph.pdf", family = "Japan1GothicBBB") #pdfファイルの指定と日本語フォント指定
plot(xaxis1, dat$y, pch = ifelse(dat$y=="1", 16, 1), xlab = "独立変数", ylab = "従属変数") #pch=...で1は黒丸、0は白丸に指定。xlabでx軸の名前、ylabでy軸の名前を指定
lines(xaxis2, yaxis2) #生成データで曲線を描画する
dev.off() #作図デバイスの終了
# pdfで出力。
グラフ
# jpegで出力。pdfの方が軽くてきれい
なお、元データはRによる統計解析p.181より
多群の判別分析 参考:田中・山際 (1997)
独立変数が複数の量的変数 従属変数が4つのカテゴリーをもつカテゴリカル変数
正準判別分析を行い、標準化判別係数によって効果の大きい要因を調べる
結果に記載する統計量 正準相関係数、識別率の有意性、説明率、独立変数の標準化判別係数、独立変数の判別関数平均値 各群の分散共分散が同じでなくてはならない。
検定はBoxのM検定
結果の解釈
標準化判別関数が大きいものが、判別関数が大きいものへ影響している
標準化判別関数の方向性と従属変数の判別関数の方向性をみる
IDV1の方向が負だから判別関数が負であるDV1、DV2に影響している
独立変数が複数の量的変数 従属変数が4つのカテゴリーをもつカテゴリカル変数
正準判別分析を行い、標準化判別係数によって効果の大きい要因を調べる
結果に記載する統計量 正準相関係数、識別率の有意性、説明率、独立変数の標準化判別係数、独立変数の判別関数平均値 各群の分散共分散が同じでなくてはならない。
検定はBoxのM検定
結果の解釈
標準化判別関数が大きいものが、判別関数が大きいものへ影響している
標準化判別関数の方向性と従属変数の判別関数の方向性をみる
IDV1の方向が負だから判別関数が負であるDV1、DV2に影響している
正準判別分析をやってみた3
#lda, candisでは判別が有意かどうかわからないのでちょっと調べてみたがmanova関数で検定していた。これで出力のWilksのところを見ればいいらしいが…ホンマ?
X<-as.matrix(iris[-5]) #データはRに入っているiris
manova.res<-manova(X~iris$Species)
print(summary(manova.res, test="Wilks") )
# 他の検定も可能
print(summary(manova.res, test="Pillai") )
print(summary(manova.res, test="Hotelling-Lawley") )
print(summary(manova.res, test="Roy") )
#lda, candisでは判別が有意かどうかわからないのでちょっと調べてみたがmanova関数で検定していた。これで出力のWilksのところを見ればいいらしいが…ホンマ?
X<-as.matrix(iris[-5]) #データはRに入っているiris
manova.res<-manova(X~iris$Species)
print(summary(manova.res, test="Wilks") )
# 他の検定も可能
print(summary(manova.res, test="Pillai") )
print(summary(manova.res, test="Hotelling-Lawley") )
print(summary(manova.res, test="Roy") )