今天给大家写一个非常经典的结构方程模型的例子,这个例子是用来研究精神错乱的,模型总共有3个因子,一个社会经济地位SES,另外两个分别是1967年和1971年的精神错乱alien。每个因子两个测量指标,其中社会经济地位SES是以教育education和职业sei两个指标变量测量,精神错乱alien用无力感powerless和混乱anomia两个指标测量。
我们想验证的模型结构为1966年的SES会对1967年和1971年的精神错乱造成影响,而1967年的精神错乱会对1971年的精神错乱有影响。同时模型允许精神错乱的测量指标间有共变。
根据以上的叙述我们可以就写出模型:
# 协方差矩阵
wheaton.cov = as.matrix(read.csv('D:/接单数据/bootcamp/dataset/wheaton_cov.csv', row.names=1))
wheaton.model = '
# 测量模型
ses =~ education + sei
alien67 =~ anomia67 + powerless67
alien71 =~ anomia71 + powerless71
# 结构模型
alien71 ~ aa*alien67 + ses
alien67 ~ sa*ses
# 残差相关
anomia67 ~~ anomia71
powerless67 ~~ powerless71
# 间接效应
IndirectEffect := sa*aa
'
alienation <- sem(wheaton.model, sample.cov=wheaton.cov, sample.nobs=932)
我们的模型图示如下:
运行上面的代码我们就可以出结果:
我们将标准化的路径系数在图上进行了展示,下图是结果: