複数の観測変数によって1つの構成概念が規定され、その構成概念が別の観測変数群に影響を与えているようなモデルをMIMIC(Multiple Indicator Multiple Cause)モデルと呼ぶ。
前回と同じくPoliticalDemocracyのデータを使用してPLSモデルをlavaanパッケージで推定してみたい。
1.x1-x3から潜在変数f(経済)を作成。
x1 1960年の一人当たり国民総生産(GNP)
x2 1960年の一人当たりの無生物エネルギー消費量
x3 1960年の産業界における労働力の割合
2.y1-y4の4つの観測変数が潜在変数f(経済)に影響を与える。
y1 1960年の報道の自由に関する専門家の評価
y2 1960年の政治的反対運動の自由
y3 1960年の選挙の公平性
y4 1960年の選出立法府の有効性
モデルの作成
library(lavaan) model <- ' f =~ x1 + x2 + x3 # Latent Variables f ~ y1 + y2 + y3 + y4' # Regression
分析
fit <- sem(model=model, data=PoliticalDemocracy, estimator="ML") summary(fit, standardized=TRUE) # 標準化
結果
lavaan 0.6-5 ended normally after 25 iterations Estimator ML Optimization method NLMINB Number of free parameters 10 Number of observations 75 Model Test User Model: Test statistic 9.217 Degrees of freedom 8 P-value (Chi-square) 0.324 Parameter Estimates: Information Expected Information saturated (h1) model Structured Standard errors Standard Latent Variables: Estimate Std.Err z-value P(>|z|) Std.lv Std.all f =~ x1 1.000 0.672 0.923 x2 2.164 0.138 15.725 0.000 1.455 0.969 x3 1.814 0.150 12.077 0.000 1.219 0.873 Regressions: Estimate Std.Err z-value P(>|z|) Std.lv Std.all f ~ y1 0.015 0.043 0.360 0.719 0.023 0.059 y2 -0.033 0.026 -1.263 0.207 -0.049 -0.193 y3 0.008 0.030 0.268 0.789 0.012 0.039 y4 0.109 0.036 3.069 0.002 0.163 0.542 Variances: Estimate Std.Err z-value P(>|z|) Std.lv Std.all .x1 0.078 0.019 4.033 0.000 0.078 0.147 .x2 0.136 0.071 1.905 0.057 0.136 0.060 .x3 0.463 0.090 5.143 0.000 0.463 0.237 .f 0.344 0.067 5.164 0.000 0.762 0.762
semPlotパッケージでの作図
library(semPlot) semPaths(fit, layout = "tree", shapeLat="ellipse", whatLabels = "stand", nDigits=3, shapeMan="square", sizeMan =8, sizeLat =8, sizeLat2 =8, style = "lisrel", residScale=12, curve=2.5, optimizeLatRes=T,edge.color="black", rotation = 2, edge.label.cex=1)
説明モデルとしていまいちなので、もう少し良い例を見つけないといけない気がする。