我有14个变量(7个二进制和7个序数)。我想进行CFA和SEM分析:由于我的变量都不是连续的,我认为最好首先计算多重相关,然后使用polychoric矩阵进行CFA和SEM。所以我在Stata中尝试了以下代码:
local thevars ..."list of variables goes here"...
polychoric `thevars'
mat polychR = r(R)
forvalues i=1/`: word count `thevars' ' {
forvalues j=1/`i' {
local setcor `setcor' `=polychR[`i',`j']'
}
if `i' < `: word count `thevars' ' local setcor `setcor' \
}
local N = _N
clear
ssd init `thevars'
ssd set obs `N'
ssd set cor `setcor'
然而,Stata一直在犯这个错误:
matrix not positive semidefinite
One or more numeric values are incorrect because real data can generate only
positive semidefinite covariance or correlation matrices.
r(459);
为了进行SEM,如何修复这个“非正半定”矩阵,并通过ssd
语法将这个多元相关矩阵提供给Stata?如果可以提供Stata代码,那将非常感激。