data923 <- read.csv("Table923.csv")
data923
attach(data923)
cor(data923)#相関行列
# 回帰分析 関数 lm(基準変数~説明変数) を利用
model1 <- lm(Y~X6)#公開授業の数
summary(model1)
AIC(model1)
model2 <- lm(Y~X7)#企画数
summary(model2)
AIC(model2)
model3 <- lm(Y~X6+X7)#企画数、公開授業の数
summary(model3)
AIC(model3)
# 標準偏回帰係数(β)を求める
z <- scale(data923)# 得点を標準化
z <- data.frame(z)# データフレーム形式に戻す
summary(lm(Y~X6+X7, z))
#多重共線性のチェック:説明変数間の相関の分析
zx <- z[7:8]
r <- cor(zx)#相関行列
VIF <- diag(solve(r))# 逆行列→対角行列
tolerance = 1/VIF
data.frame(tolerance, VIF)
#VIF >5 (tolerance < 0.2 )の時、多重共線性が疑われる。
#VIF>10以上(tolerance<.01)は重大な問題あり。
#参考)sem パケージの利用:共分散構造分析(構造方程式モデリング)
# sem パッケージをインストールする場合は、以下を実行
install.packages("sem")
# 場合によって 以下も必要になります
install.packages("mi")
library("sem")
data4 <- cbind(Y,X6,X7)
model4 <- specifyEquations()
Y = b1*X6 + b2*X7
sem4 <- sem(model=model4, S=cov(data4) , N=nrow(data4), fixed.x=c("X6","X7"))
summary(sem4, fit.indices=c("GFI", "AGFI", "CFI", "NFI", "RMSEA", "SRMR"))
#飽和モデルのためモデル全体の評価では適合度が1になります
standardizedCoefficients(sem4)
#作図 フリーソフト Graphviz を使っています
install.packages("DiagrammeR")
# パス図の出力
pathDiagram(sem4, ignore.double=FALSE, edge.labels="values", digits=2,standardize=TRUE)
#Graphvizがない場合でも、以下の方法で Graphvizと同じ作図が、Rのパッケージでできます。
#インストールは、それぞれおこなってください。
#それぞれ数分かかります。途中で質問 y/n ? が来たら、y を入力。
install.packages("DiagrammeR")
install.packages("scales")
#作図するには、以下のようにします。
pathDiagram(sem4,standardize=TRUE, ignore.double=FALSE, edge.labels="values", digits=2, node.font=c("HGRGE", 10))