説明
lavaan::cfa() は確認的因子分析を実行する関数である。正確にはモデル式の全てをコントロール可能な低レベル関数であるlavaan:lavaan()のいくつかのパラメータを、通常の確認的因子分析で使用されるものに自動設定して使い勝手を高めたラッパー関数である。
cfa()では裏方で以下の設定を自動で行う。
- 潜在変数の最初の指標の因子負荷量を1に固定する(潜在変数のスケールを固定するため)
- 残差分散を加える
- 全ての外生的な潜在変数に相関を持たせる
使用法
fit <- cfa(モデル式、データフレーム)
引数
orthogonal=TRUE | CFAモデル内の潜在変数の全ての共分散が直行するように制約する(共分散を0に固定する)。 |
std.lv=TRUE | CFAモデル内の全ての潜在変数の分散を1に固定する。 なおこの指定を行った場合、各潜在変数の第1指標の因子負荷量は1に固定されない(=自由母数となる) |
使用例
観測値が連続変数の場合の確認的因子分析
# 観測値が連続変数であるデータに対する確認的因子分析 model <- " visual =~ x1+x2+x3 textual =~ x4+x5+x6 speed =~ x7+x8+x9 " fit<-cfa(model,data=HolzingerSwineford1939) summary(fit,standardized=T,fit.measures=T)
上記スクリプトを実行すると以下の出力が表示される。
lavaan (0.5-20) converged normally after 35 iterations Number of observations 301 Estimator ML Minimum Function Test Statistic 85.306 Degrees of freedom 24 P-value (Chi-square) 0.000 Model test baseline model: Minimum Function Test Statistic 918.852 Degrees of freedom 36 P-value 0.000 User model versus baseline model: Comparative Fit Index (CFI) 0.931 Tucker-Lewis Index (TLI) 0.896 Loglikelihood and Information Criteria: Loglikelihood user model (H0) -3737.745 Loglikelihood unrestricted model (H1) -3695.092 Number of free parameters 21 Akaike (AIC) 7517.490 Bayesian (BIC) 7595.339 Sample-size adjusted Bayesian (BIC) 7528.739 Root Mean Square Error of Approximation: RMSEA 0.092 90 Percent Confidence Interval 0.071 0.114 P-value RMSEA <= 0.05 0.001 Standardized Root Mean Square Residual: SRMR 0.065 Parameter Estimates: Information Expected Standard Errors Standard Latent Variables: Estimate Std.Err Z-value P(>|z|) Std.lv Std.all visual =~ x1 1.000 0.900 0.772 x2 0.554 0.100 5.554 0.000 0.498 0.424 x3 0.729 0.109 6.685 0.000 0.656 0.581 textual =~ x4 1.000 0.990 0.852 x5 1.113 0.065 17.014 0.000 1.102 0.855 x6 0.926 0.055 16.703 0.000 0.917 0.838 speed =~ x7 1.000 0.619 0.570 x8 1.180 0.165 7.152 0.000 0.731 0.723 x9 1.082 0.151 7.155 0.000 0.670 0.665 Covariances: Estimate Std.Err Z-value P(>|z|) Std.lv Std.all visual ~~ textual 0.408 0.074 5.552 0.000 0.459 0.459 speed 0.262 0.056 4.660 0.000 0.471 0.471 textual ~~ speed 0.173 0.049 3.518 0.000 0.283 0.283 Variances: Estimate Std.Err Z-value P(>|z|) Std.lv Std.all x1 0.549 0.114 4.833 0.000 0.549 0.404 x2 1.134 0.102 11.146 0.000 1.134 0.821 x3 0.844 0.091 9.317 0.000 0.844 0.662 x4 0.371 0.048 7.779 0.000 0.371 0.275 x5 0.446 0.058 7.642 0.000 0.446 0.269 x6 0.356 0.043 8.277 0.000 0.356 0.298 x7 0.799 0.081 9.823 0.000 0.799 0.676 x8 0.488 0.074 6.573 0.000 0.488 0.477 x9 0.566 0.071 8.003 0.000 0.566 0.558 visual 0.809 0.145 5.564 0.000 1.000 1.000 textual 0.979 0.112 8.737 0.000 1.000 1.000 speed 0.384 0.086 4.451 0.000 1.000 1.000
出力の読み方
Minimum Function Test Statistic はχ2乗値。
観測値が順序変数(ordinal data)の場合の確認的因子分析
cfa("lavaanモデル式", ordered=c("順序変数である変数名1","順序変数である変数名2",...))
関連
lavaan::lavaan() cfa(),sem(),growth()の土台となる低レベル関数
lavaan::sem() 共分散方程式モデルをあてはめる
コメント