潜在変数間の因果関係

lavaanパッケージ gawk graphviz

OSはlinux(zorinOS)

windowsではlavaan:::sem使用時に変数名が日本語だとエラーになりました。

(参考)
心理データ解析 第10回(3)の問題をlavaanで分析

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
library(lavaan)
勉強量a<-c(5,4,4,5,4,5,5,6,4,4,3,6,5,8,5,5,6,4,3,4,6,4,3,3,6,3,5,5,3,3)
勉強量b<-c(6,4,7,5,5,7,6,7,5,5,3,5,6,8,6,6,5,6,4,3,5,5,3,4,7,4,6,6,4,4)
期待a<-c(2,5,6,5,4,3,3,5,6,5,5,5,4,6,7,7,6,5,5,4,4,6,5,6,4,3,7,3,6,7)
期待b<-c(3,6,5,4,5,2,5,5,6,4,4,6,5,5,7,6,6,6,4,4,5,4,4,5,5,2,5,4,7,6)
自信a<-c(36,51,62,50,60,50,45,62,48,44,59,55,57,58,67,58,48,47,32,25,44,45,28,36,45,35,51,54,38,60)
自信b<-c(31,45,41,28,38,34,31,56,45,35,42,51,40,54,60,53,45,31,23,24,38,40,33,41,39,36,43,48,26,55)
data<-data.frame(勉強量a,勉強量b,期待a,期待b,自信a,自信b)
model<-'
勉強量=~勉強量a + 勉強量b
期待 =~ 期待a + 期待b
自信 =~ 自信a + 自信b
期待 ~ 勉強量
自信 ~ 勉強量 + 期待
'
fit<-lavaan:::sem(model,data=data)
inspect(fit,"fit")
summary(fit,fit.measures=T)
モデルの全体的評価

chisq=9.162;df=6;pvalue=0.165
GFI=0.92;AGFI=0.719;RMR=0.471
AIC=787.164
RMSEA=0.133

モデルの部分評価

「勉強量」から「期待」へのパス係数が有意ではない(確率 0.911)

再度分析を行う

「勉強量」から「期待」へのパスを消す

1
2
3
4
5
6
7
8
9
10
11
model2<-'
勉強量=~勉強量a + 勉強量b
期待 =~ 期待a + 期待b
自信 =~ 自信a + 自信b
自信 ~ 勉強量 + 期待
勉強量 ~~ 0* 期待
'
fit<-lavaan:::sem(model2,data=data)
inspect(fit,"fit")
summary(fit,fit.measures=T)
parameterEstimates(fit, standardized = TRUE)
モデルの全体的評価

chisq=9.173;df=7;pvalue=0.240
GFI=0.919;AGFI=0.758;RMR=0.565
AIC=785.176
RMSEA=0.102

モデルの部分評価

Estimate Std.err Z-value P(>|z|)
Latent variables:
勉強量 =~
勉強量a 1.000
勉強量b 1.216 0.314 3.876 0.000
期待 =~
期待a 1.000
期待b 0.794 0.241 3.286 0.001
自信 =~
自信a 1.000
自信b 0.899 0.175 5.131 0.000

Regressions:
自信 ~
勉強量 5.446 1.713 3.180 0.001
期待 4.672 1.621 2.882 0.004

Covariances:
勉強量 ~~
期待 0.000

Variances:
勉強量a 0.509 0.240
勉強量b 0.257 0.304
期待a 0.429 0.358
期待b 0.630 0.269
自信a 26.050 14.017
自信b 23.461 11.643
勉強量 0.940 0.404
期待 1.337 0.558
自信 29.576 16.141