próbuję wykonać następującą analizę MATLAB:Jak wykonać bezpośredni Oblimin Obrót w MATLAB
bezpośrednie Oblimin Obrót o wartości 0 i Delta "Kaiser normalizacji"
Wiem, że MATLAB ma funkcję o nazwie rotatefactors, jednak obrócenie obrót nie jest wspomniane (ani "Normalizacja Kaisera"). Jak mogę wykonać tę analizę w MATLAB?
Dokładniej, próbuję dopasować dokładny wynik SPSS podczas wykonywania tej analizy.
Tutaj można znaleźć wszystkie algorytmy używane w SPSS: link (sprawdź stronę 338, aby obrócić obrót). Niestety, nie mogę zrozumieć równań, a tym samym odtworzyć ich w MATLAB.
Przykładowo mi stosując następujące dane:
A = magic(10);
writetable(array2table(A),'test.xlsx') % This data can be imported to SPSS
wykonuję PCA (w macierzy korelacji) i ekstrahować tylko dwa czynniki. Oto jak to zrobić w MATLAB w celu uzyskania dokładnego samej matrycy załadowczy w SPSS (które nazywają „Component Matrix”):
[eigvector,eigmatrix] = eig(corr(A));
[~,ind] = sort(diag(eigmatrix),'descend');
eigmatrix = eigmatrix(ind,ind);
eigvector = eigvector(:,ind);
eigvalues = diag(eigmatrix); % Eigeinvalues
loadings = eigvector*sqrt(eigmatrix);
loadings = loadings(:,1:2) % Extract only 2 factors
Następnie powinienem wykonać obrót na matrycy loadings
pomocą funkcja rotatefactors
, i to jest, gdzie utknąłem.
Oto składnia w SPSS:
FACTOR
/VARIABLES A1 A2 A3 A4 A5 A6 A7 A8 A9 A10
/MISSING LISTWISE
/ANALYSIS A1 A2 A3 A4 A5 A6 A7 A8 A9 A10
/PRINT INITIAL EXTRACTION ROTATION
/CRITERIA FACTORS(2) ITERATE(25)
/EXTRACTION PC
/CRITERIA ITERATE(25) DELTA(0)
/ROTATION OBLIMIN
/METHOD=CORRELATION.
Jest to wyjście z SPSS, który próbuję odtworzyć w programie MATLAB:
i twoje pytanie byłoby? –
Co to jest ... obliminacja rotacji? – rayryeng
@ Benoit_11pokazywanie bezpośredniej rotacji obliminalnej w MATLAB – mat