J'ai un ensemble de données qui comprend 717 observations (lignes) qui sont décrites par 33 variables (colonnes). Les données sont normalisées par z-score de toutes les variables. Il n'y a pas deux variables dépendantes linéairement ( ). J'ai également supprimé toutes les variables avec une très faible variance (inférieure à ). La figure ci-dessous montre la matrice de corrélation correspondante (en valeurs absolues).
Lorsque j'essaie d'exécuter l'analyse factorielle à l'aide factoran
de Matlab comme suit:
[Loadings1,specVar1,T,stats] = factoran(Z2,1);
Je reçois l'erreur suivante:
The data X must have a covariance matrix that is positive definite.
Pourriez-vous s'il vous plaît me dire où est le problème? Est-ce dû à une faible dépendance mutuelle entre les variables utilisées? De plus, que puis-je faire à ce sujet?
Ma matrice de corrélation:
eig(cov(Z2))
). Je soupçonne fortement que certains d'entre eux sont très petits.
Z2
matrice? Si des valeurs manquent dans vos données, la suppression par paire peut conduire la matrice à devenir non inversible lorsque les différentes corrélations de cette matrice sont calculées à l'aide de différents sous-échantillons des données.