d <- read.csv("http://home.hiroshima-u.ac.jp/ksatoh/documents/Kion.csv")
library(sem)
# 重回帰
kion.lm <- lm(kion~ido+keido+hyoukou,d)
summary(kion.lm)
# semで重回帰
model1 <- specify.model()
kion <- ido, b1, NA
kion <- keido, b2, NA
kion <- hyoukou, b3, NA
kion <-> kion, e1, NA
kion.sem1 <- sem(model1,cov(d),nrow(d),fixed.x=c("ido","keido","hyoukou"))
summary(kion.sem1)
std.coef(kion.sem1) # 標準化回帰係数(パス係数)
# Graphvizでパス図を描くための準備
# EasyGraphVizの方がお手軽にパス図を描ける(標準で日本語対応)
path.diagram(kion.sem1, ignore.double=F, edge.labels="values", digits=3)
# semで階層的重回帰
model2 <- specify.model()
kion <- ido, b1, NA
ido <- keido, b2, NA
kion <- hyoukou, b3, NA
kion <-> kion, e1, NA
ido <-> ido, e2, NA
kion.sem2 <- sem(model2,cov(d),nrow(d),fixed.x=c("keido","hyoukou"))
summary(kion.sem2)
std.coef(kion.sem2) # 標準化回帰係数(パス係数)
path.diagram(kion.sem2, ignore.double=F, edge.labels="values", digits=3)
# 決定係数R2の計算
# R-Forge: sem.additionsのrsquared.sem()を使う
# install.packages("sem.additions", repos="http://R-Forge.R-project.org")
library(sem.additions)
rsquare.sem(kion.sem2)