У мене є набір даних, який складається з 717 спостережень (рядків), які описуються 33 змінними (стовпцями). Дані стандартизуються за допомогою z-оцінка всіх змінних. Немає двох змінних лінійно залежних ( ). Я також видалив усі змінні з дуже низькою дисперсією (менше ). На малюнку нижче показана відповідна кореляційна матриця (в абсолютних значеннях).0,1
Коли я намагаюся запустити факторний аналіз, використовуючи factoran
в Matlab наступне:
[Loadings1,specVar1,T,stats] = factoran(Z2,1);
Я отримую таку помилку:
The data X must have a covariance matrix that is positive definite.
Скажіть, будь ласка, де проблема? Це пов'язано з низькою взаємною залежністю серед використаних змінних? Крім того, що я можу з цим зробити?
Моя кореляційна матриця:
eig(cov(Z2))
). Я сильно підозрюю, що деякі з них дуже малі.
Z2
матрицю? Якщо у ваших даних відсутні значення, то попарне видалення може призвести до того, що матриця стане неперевернутою, коли різні кореляції в цій матриці обчислюються за допомогою різних підпроборів даних.