Oferty statystyczne Tutoriale Opinie Kontakt

Ile czynników wyodrębnić? Wykres osypiska, analiza równoległa i MAP

Liczba czynników to najważniejsza decyzja w eksploracyjnej analizie czynnikowej – od niej zależą ładunki, nazwy czynników i wnioski. Porównujemy cztery kryteria na prawdziwej ankiecie z 12 pytaniami i pokazujemy, jak uzasadnić wybór w pracy. Typowe pytanie promotora: dlaczego trzy czynniki, skoro kryterium Kaisera wskazuje dwa?

W skrócieKryterium Kaisera i wykres osypiska to szybki przegląd, analiza równoległa i MAP – kryteria, którym ufa się bardziej. Gdy kryteria się nie zgadzają, oglądasz rozwiązania o sąsiedniej liczbie czynników i wybierasz to, które ma sens teoretyczny i czytelne ładunki. Cały przebieg analizy czynnikowej znajdziesz we wpisie analiza czynnikowa – przykład.

Dane: 12 pytań o autonomiczny samochód

Ankieta CRUIZE (N = 303) zawiera po cztery pytania o łatwość korzystania, użyteczność i intencję zakupu autonomicznego samochodu, w skali 1–5. Autorzy skali zakładali więc trzy czynniki. Dane nadają się do analizy: KMO = 0,90, test Bartletta χ²(66) = 2327,33; p < 0,001. Teraz pytanie: ile czynników pokazują same dane?

Krok 1. Cztery kryteria – co mówią na tych danych

Tabela 1. Liczba czynników według czterech kryteriów (12 pozycji, N = 303)
KryteriumRegułaWynik na danychWskazuje
Kaiser (wartość własna > 1)zostaw składowe z wartością własną powyżej 16,00; 2,09; potem 0,802
Wykres osypiskazostaw punkty nad „łokciem”łokieć przy 3. punkcie2
Analiza równoległa (składowe)wartość własna > 95. centyl z danych losowych2,09 > 1,31; 0,80 < 1,232
Analiza równoległa (czynniki, oś główna)jak wyżej, na zredukowanej macierzy korelacji0,32 > 0,25; 0,14 < 0,183
MAP Veliceranajniższy średni kwadrat korelacji cząstkowych0,036 przy 2 (0,039 przy 3)2
Teoria skali: 3 czynniki. Rozwiązania do porównania: 2 i 3 czynniki.
  1. Kryterium Kaisera liczy wartości własne macierzy korelacji. Wartość własna mówi, ile „pytań” wariancji niesie dana składowa. Dwie pierwsze (6,00 i 2,09) wyjaśniają razem 67% wariancji. Kaiser często zawyża liczbę czynników przy wielu pozycjach, a tu i tak wskazuje dwa.
  2. Wykres osypiska (Cattell, 1966) ocenia się wzrokowo: szukasz miejsca, gdzie stromy spadek przechodzi w płaskie „rumowisko”. Tu łokieć jest przy trzecim punkcie, więc zostają dwa punkty nad nim (rys. 1, lewy panel). Ocena bywa subiektywna, dlatego nie wystarczy jako jedyne uzasadnienie.
  3. Analiza równoległa Horna porównuje Twoje wartości własne z wartościami z danych losowych o tej samej liczbie osób i pytań. Zostawiasz tyle czynników, ile wartości jest wyższych od losowych (tu: od 95. centyla ze 100 symulacji). Wersja dla składowych daje 2, wersja dla czynników metodą osi głównych – 3. Trzecia wartość (0,32) jest wyraźnie powyżej losowej (0,25), czwarta (0,14) już poniżej (0,18).
  4. MAP Velicera (1976) usuwa kolejne składowe i sprawdza, ile wspólnej zmienności zostaje między pytaniami. Najniższy punkt wypada przy 2 (0,036), ale przy 3 jest tylko trochę wyżej (0,039).
Po lewej wykres osypiska dwunastu wartości własnych: 6,00 i 2,09 nad progiem Kaisera 1 i nad przerywaną czerwoną linią danych losowych, od trzeciej wartości 0,80 poniżej obu; po prawej krzywa MAP z minimum 0,036 przy dwóch czynnikach
Rys. 1. Ocena wzrokowa trzech kryteriów naraz. Po lewej: czarne punkty to wartości własne Twoich danych, niebieska linia – próg Kaisera, czerwona przerywana – 95. centyl wartości z danych losowych (analiza równoległa dla składowych). Dwie pierwsze wartości leżą nad obiema liniami. Po prawej: test MAP, minimum przy dwóch czynnikach, ale trzy są tuż obok.
Wykres osypiska z aplikacji SZTOS dla analizy czynnikowej metodą osi głównych: pełne punkty danych surowych 5,48, 1,47, 0,32, puste punkty danych symulowanych, linie przecinają się między trzecim a czwartym czynnikiem, czerwona pionowa linia przy 3
Rys. 2. Wykres osypiska z raportu SZTOS (moduł analizy czynnikowej, metoda osi głównych). Pełne punkty to wartości własne zredukowanej macierzy korelacji, puste – 95. centyl z danych symulowanych. Linie przecinają się między trzecim a czwartym czynnikiem, a czerwona pionowa linia wskazuje 3 czynniki.

Krok 2. Kryteria się nie zgadzają – co dalej?

To częsta sytuacja. Nie wybieraj kryterium, które pasuje do hipotezy. Zrób to, co zalecają Fabrigar i in. (1999): policz rozwiązania o sąsiedniej liczbie czynników (tu 2 i 3) i porównaj ich sens.

  • 2 czynniki: łatwość korzystania osobno, a użyteczność i intencja zakupu zlewają się w jeden czynnik (ładunki 0,63–0,83). Dopasowanie słabe: TLI = 0,883; RMSEA = 0,115.
  • 3 czynniki: każda grupa pytań ma swój czynnik, a główne ładunki wynoszą od 0,53 do 0,89 (rys. 3), z jednym wyjątkiem. Dopasowanie lepsze: TLI = 0,957; RMSEA = 0,069. Jedno pytanie, Intencja kupna1, ładuje dwa czynniki po równo (0,38 i 0,37) – to ładunek krzyżowy do opisania.
  • 4 czynniki: użyteczność rozpada się na dwie pary pytań, czego teoria nie przewiduje. To typowy objaw zbyt wielu czynników.

Decyzja: 3 czynniki. Wspierają ją teoria, analiza równoległa dla czynników, lepsze dopasowanie i czytelne ładunki. Czynniki użyteczności i intencji korelują ze sobą (0,69), co wyjaśnia, dlaczego kryteria oparte na składowych „widzą” tylko dwa. Składowe biorą pod uwagę całą wariancję pytań, także ich własny „szum”, a czynniki – tylko wariancję wspólną. Gdy dwa czynniki są silnie skorelowane, w składowych łatwo się zlewają.

Wykres ładunków czynnikowych z aplikacji SZTOS dla trzech czynników: czynnik 1 – łatwość korzystania 0,68–0,89, czynnik 2 – użyteczność 0,53–0,89, czynnik 3 – intencja kupna 0,68–0,87; Intencja kupna1 ładuje czynnik 2 i 3 po około 0,37
Rys. 3. Ładunki rozwiązania 3-czynnikowego z raportu SZTOS (oś główna, rotacja oblimin). Przerywana linia to próg 0,5. Każda grupa pytań ładuje „swój” czynnik, a Intencja kupna1 nie przekracza progu w żadnym – to pytanie warto omówić w pracy. Program zapisuje ładunki z kropką dziesiętną.

Krok 3. Jak opisać decyzję w pracy?

Zapis w stylu APA: Liczbę czynników ustalono na podstawie kilku kryteriów. Kryterium Kaisera, wykres osypiska, analiza równoległa dla głównych składowych oraz test MAP wskazywały na dwa czynniki, natomiast analiza równoległa dla czynników (metoda osi głównych, 95. centyl ze 100 symulacji) – na trzy. Porównano rozwiązania 2- i 3-czynnikowe. W rozwiązaniu 2-czynnikowym pozycje użyteczności i intencji zakupu tworzyły jeden czynnik, a dopasowanie było słabe (TLI = 0,883; RMSEA = 0,115). Rozwiązanie 3-czynnikowe odtwarzało zakładaną strukturę skali i lepiej pasowało do danych (TLI = 0,957; RMSEA = 0,069), dlatego je przyjęto.

  • Podaj wszystkie kryteria, także te, które wskazały inną liczbę.
  • Napisz, jaką metodą ekstrakcji i rotacji liczyłeś.
  • Przy analizie równoległej podaj liczbę symulacji i centyl. Wynik zależy od losowania, więc w R ustaw ziarno.

Pełny raport z tej analizy: przykładowy raport SZTOS z analizy czynnikowej. Jeśli chcesz tylko streścić dane, a nie szukać ukrytych cech, zobacz analizę PCA na przykładzie.

Cała analiza w R

library(psych)
# 12 pozycji ankiety CRUIZE (N = 303, skala 1–5): Łatwość korzystania 1–4, Użyteczność 1–4, Intencja kupna 1–4
dane <- readxl::read_excel("Dane_CRUIZE_elegant.xlsx")
poz  <- as.data.frame(dane[, 6:17])
names(poz) <- c(paste0("L", 1:4), paste0("U", 1:4), paste0("I", 1:4))

# 1) Kryterium Kaisera: wartości własne macierzy korelacji > 1
ev <- eigen(cor(poz))$values
round(ev, 2); sum(ev > 1)
round(cumsum(ev)[1:3] / 12, 2)                      # skumulowany % wariancji

# 2) Wykres osypiska i 3) analiza równoległa: 100 losowych zbiorów 303 × 12
options(mc.cores = 1); set.seed(2026)                # powtarzalne losowanie
pa <- fa.parallel(poz, fm = "pa", fa = "both", n.iter = 100, plot = TRUE)
c95 <- apply(pa$values[, paste0("CSim", 1:12)], 2, quantile, 0.95)   # składowe (PCA)
f95 <- apply(pa$values[, paste0("Fsim", 1:12)], 2, quantile, 0.95)   # czynniki (oś główna)
rbind(dane_pc = ev[1:4], losowe_pc_95 = c95[1:4],
      dane_fa = pa$fa.values[1:4], losowe_fa_95 = f95[1:4]) |> round(2)

# 4) MAP Velicera: minimum średniej kwadratu korelacji cząstkowych
map <- VSS(poz, n = 5, rotate = "none", plot = FALSE)$map
round(map, 3); which.min(map)

# 5) Konfrontacja z teorią: rozwiązania 2- i 3-czynnikowe (oś główna, oblimin)
f2 <- fa(poz, nfactors = 2, fm = "pa", rotate = "oblimin")
f3 <- fa(poz, nfactors = 3, fm = "pa", rotate = "oblimin")
print(f3$loadings, cutoff = 0.3, sort = TRUE)
round(c(TLI_2 = f2$TLI, TLI_3 = f3$TLI, RMSEA_2 = f2$RMSEA[[1]], RMSEA_3 = f3$RMSEA[[1]]), 3)

Wynik w konsoli R:

 [1] 6.00 2.09 0.80 0.63 0.45 0.39 0.35 0.32 0.28 0.27 0.23 0.18
[1] 2
[1] 0.50 0.67 0.74
Parallel analysis suggests that the number of factors =  3  and the number of components =  2 
             CSim1 CSim2 CSim3 CSim4
dane_pc       6.00  2.09  0.80  0.63
losowe_pc_95  1.43  1.31  1.23  1.16
dane_fa       5.48  1.47  0.32  0.14
losowe_fa_95  0.61  0.32  0.25  0.18
[1] 0.082 0.036 0.039 0.051 0.077
[1] 2

Loadings:
   PA2    PA1    PA3   
L1  0.838              
L2  0.891              
L3  0.677              
L4  0.877              
U1         0.825       
U2         0.893       
U3         0.580       
U4         0.525       
I2                0.875
I3                0.830
I4                0.682
I1         0.375  0.370

                 PA2   PA1   PA3
SS loadings    2.744 2.267 2.201
Proportion Var 0.229 0.189 0.183
Cumulative Var 0.229 0.418 0.601
  TLI_2   TLI_3 RMSEA_2 RMSEA_3 
  0.883   0.957   0.115   0.069 

Pytania promotora i recenzenta

Czy wystarczy samo kryterium Kaisera?

Nie. To najstarsza i najmniej trafna reguła – często zawyża liczbę czynników. Podaj je najwyżej obok analizy równoległej.

Dlaczego za każdym razem dostaję trochę inne wartości losowe?

Analiza równoległa losuje dane. Różnice są zwykle na drugim miejscu po przecinku. Ustaw ziarno i podaj liczbę symulacji, a wynik będzie powtarzalny.

Co zrobić z pytaniem, które ładuje dwa czynniki?

Opisz to. Sprawdź treść pytania i rzetelność skali z nim i bez niego. Usuwaj pozycję tylko z uzasadnieniem merytorycznym, nie po to, żeby „wyczyścić” tabelę.

Bibliografia

  1. Cattell, R. B. (1966). The scree test for the number of factors. Multivariate Behavioral Research, 1(2), 245–276. https://doi.org/10.1207/s15327906mbr0102_10
  2. Horn, J. L. (1965). A rationale and test for the number of factors in factor analysis. Psychometrika, 30(2), 179–185. https://doi.org/10.1007/BF02289447
  3. Kaiser, H. F. (1960). The application of electronic computers to factor analysis. Educational and Psychological Measurement, 20(1), 141–151. https://doi.org/10.1177/001316446002000116
  4. Velicer, W. F. (1976). Determining the number of components from the matrix of partial correlations. Psychometrika, 41(3), 321–327. https://doi.org/10.1007/BF02293557
  5. Glorfeld, L. W. (1995). An improvement on Horn’s parallel analysis methodology for selecting the correct number of factors to retain. Educational and Psychological Measurement, 55(3), 377–393.
  6. Fabrigar, L. R., Wegener, D. T., MacCallum, R. C., & Strahan, E. J. (1999). Evaluating the use of exploratory factor analysis in psychological research. Psychological Methods, 4(3), 272–299. https://doi.org/10.1037/1082-989X.4.3.272
  7. Field, A., Miles, J., & Field, Z. (2012). Discovering statistics using R. SAGE.
  8. Hryniewicz, K., & Milewska, A. (2023). SZTOS: System Zautomatyzowanego Tworzenia Opisu Statystycznego [Oprogramowanie]. SZTOS IT. https://sztos-it.com/

Zobacz też

Przygotowujesz artykuł, doktorat lub grant?

Zaplanujemy i wykonamy analizy, przygotujemy raport z tabelami, wykresami i kodem R oraz pomożemy odpowiedzieć na uwagi recenzentów dotyczące statystyki.

Na skróty