Rstudioの構造方程式モデリングでパス図が作成できません

実現したいこと

Rstudioで構造方程式モデリングの分析をしようとしています。関数はlavaanパッケージのsem()を用いています。

前提

イメージ説明

以上の図のように、10個の観測変数(説明変数である4つの経済変数【life.retro・life.pros・econ.retro・econ.pros】と5つの政治変数【poli.satis・blue.dum・ green.dum・nation.id・tw.ideo】及び1つの被説明変数【vote】)間の関係を検証しようとしています。

※備考

1.変数は3つの2値変数(vote・blue.dum・ green.dum)と7つの3件順序尺度変数(他の7変数)を含むので、orderedの引数を使っています。また、被説明変数【vote】は2値変数(カテゴリー変数)なので、estimator="WLSMV"の引数を使っています。

2.使用しているデータのTW2008は、NAが含まれるサンプルは全て排除して分析しています。

該当のソースコード

コードは以下の通りです。

# 共分散構造分析 model08 <- 'poli.satis~life.retro+life.pros+econ.retro+econ.pros blue.dum ~life.retro+life.pros+econ.retro+econ.pros green.dum ~ life.retro+life.pros+econ.retro+econ.pros nation.id ~life.retro+life.pros+econ.retro+econ.pros tw.ideo ~ life.retro+life.pros+econ.retro+econ.pros vote ~ life.retro+life.pros+econ.retro+econ.pros+poli.satis+blue.dum+ green.dum +nation.id+tw.ideo ' fit.tw08 <-lavaan::sem (model08, data= TW2008, ordered=c("vote","blue.dum", "green.dum"), estimator="WLSMV") sem08 <- summary(fit.tw08, standardized=TRUE, fit.measures=TRUE) #パス図 sem.path08 <-semPaths(fit.tw08, what = "path", whatLabels = "std", style = "lisrel",layout = "tree", intercepts = FALSE, residuals = FALSE, edge.label.cex = .9, rotation = 2, curve = 2, layoutSplit = FALSE, normalize = FALSE, height = 9, width = 6.5, residScale = 10)

発生している問題・エラーメッセージ

以上のコードを走らせると次のようなエラーメッセージが表示されます。

> f#パス図 > > sem.path08 <-semPaths(fit.tw08, what = "path", whatLabels = "std", + style = "lisrel",layout = "tree", intercepts = FALSE, + residuals = FALSE, edge.label.cex = .9, rotation = 2, + curve = 2, layoutSplit = FALSE, normalize = FALSE, + height = 9, width = 6.5, residScale = 10) Error in dimnames(x) <- dn : length of 'dimnames' [2] not equal to array extent

どのように修正すればよろしいでしょうか?教えていただけますとありがたいです。

試したこと

どうすればいいのか分からないので、特にありません。

コメントを投稿

0 コメント