Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten...

33
MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden zur Arbeit mit der Statistiksoftware R Dr. H. Grunert Bernburg 2005 Seite 1 von 33

Transcript of Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten...

Page 1: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktorenanalyse

(Hauptkomponentenmethode PCA)

Ein kurzer Leitfaden zur Arbeit mit der Statistiksoftware R

Dr H GrunertBernburg 2005

Seite 1 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Vorbemerkung

Die Statistiksoftware und Programmierumgebung R wird von einer internationalen Entwickler-gemeinschaft als Opensourcesoftware entwickelt und kann von jedermann entsprechend der GNUGeneral Public License Version 2 (Juni 1991) frei genutzt und auch weiter verbreitet werden DieSoftware wird auf der Homepage des R - Projektes (httpwwwr-projectorg) als Downloadbereitgestellt

R erfreut sich als Statistiksoftware zunehmender Beliebtheit Dies ist nicht nur der Tatsachegeschuldet dass R frei zugaumlnglich und kostenfrei ist Vielmehr bietet R nahezu unbegrenzte undflexible Moumlglichkeiten zur Durchfuumlhrung statistischer Analysen Will man die Vorzuumlge von Rnutzen sollte man mit zwei Dingen rechnen R ist ein sogenanntes Konsolenprogramm Es kommtohne die heute uumlblichen Fenster- und Menuumlauswahltechniken daher Man muss die Sprache von Rerst erlernen - was insbesondere dem windows - verwoumlhnten User anfangs schwer faumlllt - bevor manmit dem Programm arbeiten kann Ist diese Huumlrde nach kurzer Zeit uumlberwunden wird man durchdas dann komfortable Arbeiten mit der Software mehr als entschaumldigt Zweitens sollte man mit derstatistischen Theorie etwas vertraut sein R bietet keine vorgefertigten Analysebausteine wie etwaSPSS Der Nutzer muss die einzelnen Schritte einer statistischen Analyse kennen und sich einerelevante Berechnungsprozedur erst suchen bzwzusammenstellen Das ist sicherlich die Haupt-schwierigkeit bei der Arbeit mit R Das Suchen nach dem richtigen Befehl ist manchmal sehraufwendig Hat man diesen aber einmal gefunden sind die Berechnungen selbst im Handumdrehenerledigt

Die Leitfaumlden zur Arbeit mit R sollen den Einstieg in die Arbeit mit R erleichtern Der Leserfindet hier auf das Wesentliche beschraumlnkte Anleitungen zur Durchfuumlhrung statistischer Standard-analysen an Hand einfacher Beispiele Damit erhaumllt er ein Grundgeruumlst das eigene Analysen schnellzum Erfolg fuumlhren kann Die Betonung liegt jedoch auf kann Keineswegs darf man erwarten damitfuumlr alle Fragestellungen ein Rezept zur Hand zu haben

Auf die Darstellung mathematisch-statistischer Theorie wird in der Scriptenreihe weitgehendverzichtet Der Autor geht davon aus dass diese in Statistikbuumlchern etc nachgeschlagen werdenkann bzw der Leser hinlaumlnglich damit vertraut ist

Eine kurze Einfuumlhrung in die Arbeit mit R wird soweit das fuumlr statistische (Standard) - Analysenerforderlich scheint in einem gesonderten Script abgehandelt Das vorliegende Material setzt grund-legende Kenntnisse hierzu voraus Der fuumlr die Berechnungen erforderliche R- Code wird dann auchzumeist ohne Kommentar angegeben Fuumlr die Berechnungen wurde das neueste Release R 211genutzt Auf Abweichungen hiervon und auf Probleme bei der Nutzung aumllterer Versionen von Rwird jeweils gesondert hingewiesen

Bernburg September 2005

H Grunert

Seite 2 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Inhalt

1 Hauptkomponentenmethode (PCA)

11 Faktoranalyse oder PCA 12 Der empirische Befund

2 Die Prozedur pca multiv

21 Berechnung der Anfangsloumlsung22 Berechnung der rotierten Loumlsung23 Eignung der Ausgangsdaten fuumlr eine PCA24 Bewertung der rotierten Loumlsung

3 Die Prozedur prcomp stats

4 Literatur amp Quellen

Seite 3 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

1 Hauptkomponentenmethode (Principal Components Analysis)11 Faktoranalyse oder PCA

Die Faktorenanalyse versucht ein haumlufig umfangreiches Variablenset durch einige wenige vonein-ander unabhaumlngige Komponenten (Faktoren) so zu ersetzen dass die wesentlichen Beziehungen inden Ausgangsdaten durch die Komponenten reproduziert werden Genauer gesagt sollen die Kom-ponenten die Variabilitaumlt der Ausgangsdaten gemessen als Summe der Varianzen der Ausgangs-variablen (totale Varianz) moumlglichst vollstaumlndig erklaumlren koumlnnen Die Komponenten sind hypothe-tische Konstrukte Man kann sie sich als Ausgleichsgeraden zwischen den Werten der Variablenaumlhnlich wie bei der multiplen linearen Regression vorstellen Dabei wird in der Regel so vorgegan-gen dass eine erste Komponente so berechnet (extrahiert) wird dass sie die gesamte Summe derquadratischen Abweichungen aller Variablen zu sich selbst minimiert Anders formuliert wird derdurch die Komponente erklaumlrte Varianzanteil aller Variablen maximiert Eine zweite Komponentewird meist orthogonal zur ersten bestimmt Diese wiederum erklaumlrt ein Maximum der verbleibendennicht erklaumlrten Gesamtvarianz Das Verfahren wird so weiter gefuumlhrt bis theoretisch die gesamteVarianz aller Variablen erklaumlrt wird

Die Faktoranalyse ist dabei keine bestimmte Methode Unter dem Begriff Faktoranalyse fasst manvielmehr eine Reihe unterschiedlichster Verfahren zusammen Zum Ersten waumlre hier die Faktor-analyse (FA) genannt Die FA geht davon aus dass die Variabilitaumlt der Ausgangsdaten durch dasgleichzeitige Wirken gemeinsamer Faktoren der Variablen und spezieller Faktoren vollstaumlndigerklaumlrt werden kann Die speziellen Faktoren erklaumlren dabei die sogenannte Einzelrestvarianz vonVariablen die nicht durch die gemeinsamen Faktoren erfasst wird Zum Zweiten waumlre dieHauptkomponentenanalyse (PCA) zu nennen Die PCA geht davon aus dass eine begrenzte Anzahlvon noch zu bestimmenden Faktoren existiert die die Variabilitaumlt der Ausgangsvariablen maximal(also nicht vollstaumlndig) erklaumlren koumlnnen Im Ergebnis bleibt gewissermaszligen ein Rest nicht erklaumlrterVarianz uumlbrig der sich als Residuum bestimmen laumlsst Dh die Einzelrestvarianzen sind im Gegen-satz zur FA nicht Bestandteil des statistischen Modells

Grundsaumltzlich kann die Bestimmung der Komponenten innerhalb der PCA auf zwei Wegenerfolgen Die Hauptkomponentenmethode versucht den Anteil der erklaumlrten Gesamtvarianz in derog Weise zu maximieren Dh ganz praktisch dass die Anzahl der zu extrahierenden Komponen-ten ergibt sich erst im Lauf der Berechnung Die Hauptfaktorenanalyse (auch Hauptachsenana-lyse) auf der anderen Seite geht davon aus dass es agrave priori einige Komponenten geben muss die dieGesamtvarianz erklaumlren Diese sind uU auch bekannt Dh die Berechnungen beschraumlnken sicheigentlich darauf die Variablen diesen bekannten Komponenten (Hauptachsen) zuzuordnenWerden zB Abundanzen eines Bachflohkrebses in Abhaumlngigkeit des pH-Wertes verschiedenerGewaumlsser ermittelt so stellt der pH-Wert eben eine bekannte Hauptachse (auch Gradient) dar Mankann also hier bestimmen inwieweit sich Gewaumlsser entlang der Achse pH-Wert anordnen lassenIm Ergebnis wird die totale Varianz wieder maximal auf die Faktoren verteilt und es bleibt haumlufigein nicht erklaumlrter Rest bestehen

Im naturwissenschaftlichen Kontext zaumlhlt die PCA zu den Ordinationstechniken Es wird versuchtdie gemessenen Variablen Komponenten Achsen Gradienten zuzuordnen Die Hauptkomponen-tenmethode waumlre hier ein Verfahren der indirekten Ordination die Hauptachsenanalyse einVerfahren der direkten Ordination

Seite 4 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Ein drittes Verfahren der Faktorenanalyse ist die Maximum-Likelihood - Faktorenanalyse (ML-FA) Hierbei handelt es sich um eine Faktoranalyse (FA) bei der nicht die empirischen Daten alsGrundlage der Faktorextraktion dienen Zur Berechnung werden die entsprechenden ML- Schaumltzerverwendet Die ML-FA entspricht damit eigentlich der Stichprobensituation bei empirischenUntersuchungen am besten

12 Berechnung einer PCA

In diesem Script soll die Hauptkomponentenmethode beschrieben werden die im weiteren als PCAbezeichnet wird

Fuumlr die weiteren Darlegungen sind zwei Voraussetzungen wichtig Wir gehen davon aus dass dieAusgangsdaten intervallskaliert und wenigstens annaumlhernd normalverteilt sind Liegt keineNormalverteilung vor sollte diese durch ein geeignetes Verfahren erreicht werden1 Zwischen denVariablen sollten daruumlberhinaus lineare Beziehungen bestehen2

Die Grundlage der Bestimmung der Komponenten sind in der Regel die Korrelationen (genauerProdukt-Moment-Korrelationen) bzw die Korrelationsmatrix der Ausgangsvariablen Eine hoheKorrelation zwischen zwei Variablen kann so gedeutet werden dass sie durch einen nicht beobacht-baren Faktor (latenter Faktor) bewirkt wird der hinter diesen Variablen steht Die Variablen weisendann natuumlrlich hohe Korrelationen zu diesen Faktoren selbst auf Die latenten Faktoren waumlren diezu extrahierenden Komponenten Die Korrelationen der Variablen zu den Komponenten bezeichnetman als Faktorladungen

Neben den Korrelationen werden haumlufig auch Kovarianzen zur Faktorextraktion herangezogenDie Verwendung der Kovarianzen bzw der Kovarianzmatrix ist immer dann angebracht wenn dieAusgangsdaten ohne weitere Transformation verwendet werden koumlnnen und Variablen mit dergroumlszligeren Variabilitaumlt staumlrker zu beruumlcksichtigen sind Sehr oft haben die Ausgangsdaten aberunterschiedliche Maszligeinheiten und dementsprechend auch Groumlszligenordnungen Hier ist eineTransformation der Daten in eine vergleichbare Skalierung notwendig Dies wird im allgemeinendurch Zentrieren der Daten oder eine z- Standardisierung erreicht Werden die Ausgangsdaten z-standardisiert sind Korrelations- und Kovarianzmatrizen gleich Die Berechnungsgrundlage fuumlr dieFaktorenanalyse waumlre in diesem Fall automatisch die Korrelationsmatrix Die Korrelationsmatrixwird also dann genutzt wenn die Maszligeiheiten Ausgangsdaten vergleichbar sind und alle Variablengleich behandelt werden sollen Spezielle Anwendungsgebiete erfordern daruumlberhinaus imVorfeld der PCA spezifische Datentransformationen So werden Daten im Rahmen biologischerUntersuchungen haumlufig logarithmiert

1 Ein geeignetes Verfahren waumlre zB die Logarithmierung der Daten2 Ist dies nicht der Fall muumlsste an Stelle der PCA versucht werden zB eine Korrespondenzanalyse (CA DCA) zu

rechnen

Seite 5 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Zusammenfassend lassen sich folgende Hinweise hinsichtlich der Berechnungsgrundlagen einerPCA zusammenstellen

Untersuchungsgegenstand Berechnungsgrundlage Datentransformation Abundanzwerte Kovarianzmatrix ZentrierungUmweltvariable Korrelationsmatrix Standardisierung

biologische Daten Kovarianzmatrix Logarithmierungoumlkonomische Daten Korrelationsmatrix Standardisierung

Die Berechnung einer PCA laumlszligt sich ohne auf die mathematischen Details weiter einzugehen wiefolgt in einzelnen Arbeitsschritten skizzieren

1 Schritt Die Ausgangsdaten der Berechnung muumlssen als Matrix vorliegen Die Zeilen derMatrix enthalten dabei die Untersuchungsobjekte und die Spalten die Untersuchungs-kriterien (Variablen)Ausgangspunkt ist die Korrelationsmatrix der Ausgangsvariablen R Fuumlr diese Matrix werden die Matrix der Eigenvektoren V und der Vektor der Eigenwerte λberechnet3 Die Anzahl der Eigenwerte ist gleich der Anzahl der Variablen bzw Faktoren DieSumme der Eigenwerte einer Korrelationsmatrix ist gleich der Anzahl der Ausgangs-variablen und gleich der Summe der gesamten aufzuklaumlrenden Varianz4 Die Matrix der Eigenvektoren ist die sogenannte Transformationsmatrix5 mit derenHilfe die gesuchten Faktoren bestimmt werden Die Matrix der Eigenvektoren istquadratisch Die Zeilen beziehen sich auf die Variablen die Spalten stellen die zubestimmenden Faktoren dar Es werden also soviele Faktoren bestimmt wie Variab-len in die Untersuchung einbezogen werden6 Die Elemente der Matrix sind so dieTransformationskoeffizienten der jeweiligen Variable bezuumlglich eines bestimmtenFaktors Die Eigenwerte zeigen nun welcher Varianzanteil durch einen Faktor aufgeklaumlrtwerden kann Da die Eigenwerte sukzessive durch ein Dekompositionsverfahrenbestimmt werden ergibt sich zwangslaumlufig dass der erste Eigenwert auch dengroumlszligten Varianzanteil erklaumlrt der zweite Eigenwert den zweitgroumlszligten Anteil usw

3 Dies kann auch separat mit dem Befehl eigen stats erfolgen4 Die Summe der Eigenwerte einer quadratischen Matrix ist immer gleich der Summe der Varianzen der Variablen

(=totale Quadratsumme aller Variablen) Diese wiederum ergibt sich aus der Summe der Diagonalelemente derquadratischen Matrix Bei einer Korrelationsmatrix weisen die Diagonalelemente wegen der Standardisierung derKovarianzen den Werte 1 auf Dh die gesamte Varianz bzw die Summe der Eigenwerte ist gleich der Anzahl derVariablen

5 Der Eigenvektor ist der zu einem bestimmten Eigenwert gehoumlrende Transformationsvektor Dieser Transformations-vektor dient zur Bestimmung von sog homologen Linearkombinationen der Variablen die sich durch eine maximaleVarianz der Ausgangsvariablen auszeichnen Es wird damit gewissermaszligen ein Faktor bestimmt der die Varianzmaximal erklaumlren kann siehe dazu ua Bortz 4

6 Allerdings ist dies in R praktisch auf maximal 7 Faktoren beschraumlnkt

Seite 6 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Schritt Der zweite Schritt besteht in der Bestimmung der gesuchten Faktoren Dies geschiehtindirekt dadurch dass man nun die Korrelationen zwischen den Variablen und denhypothetischen Faktoren den Faktorladungen berechnet Dies wird durch die Multi-plikation der Eigenwerte mit der Transformationsmatrix erreicht Im Ergebnis erhaumlltman die quadratische Faktorladungsmatrix A nach folgender Formel

A = V middot diag λ

An Hand der Faktorladungen kann man erkennen welche Variablen mit welchemFaktor hoch korrelieren welche Variablen also diesem Faktor zugeordnet werdenkoumlnnen Variablen die auf einen bestimmten Faktor nicht hoch laden koumlnnen dannggf einem anderen Faktor auf den sie wiederum hoch laden zugeordnet werdenusw

3 Schritt Im dritten Schritt werden als eigentliches Ziel der PCA die Werte der Untersuchungs-objekte auf den Faktoren (Faktorwerte scores) berechnetDazu benoumltigt man die z-standardisierten Ausgangswerte Diese Matrix wollen wirmit Z bezeichnen die Matrix der Faktorwerte mit F Die Faktorwerte ergeben sichnach folgender Formel

F = Z middot V middot diag λminus12

diag λminus12 Diagonalmatrix der reziproken Werte der Standardabweichungen

der Faktoren (= reziproker Wert der Wurzel aus den Eigenwerten)

Das gleiche Ergebnis erhaumllt man auch unter Verwendung der Faktorladungen mitfolgender Formel

F = Z middot A middot (AT middotA)-1

Die Faktorwerte zeigen den Wert der Objekte bezuumlglich der Faktoren (Koordinatender Objekte im Faktorraum) Ein hoher Wert beispielsweise weist darauf hin dassdie Variable stark durch den Faktor beeinflusst wirdBei der Interpretation muss beruumlcksichtigt werden dass es sich um standardisierteWerte handelt (siehe weiter unten) Daruumlberhinaus sind die Vorzeichen inhaltlicheBedeutung etc der Ausgangsdaten zu beachten

4 Schritt Das Anliegen der PCA besteht in der Reduzierung der Ausgangvariablen aufwenige voneinander unabhaumlngige Faktoren Bis zu diesem Punkt werden im Prinzipgenauso viele Faktoren bestimmt wie Variablen in die Berechnung eingehen Dh esmuszlig nun an dieser Stelle eine Auswahl von relevanten Faktoren vorgenommenwerden Dafuumlr gibt es einige MoumlglichkeitenEine Grunduumlberlegung besteht darin dass die auszuwaumlhlenden Faktoren dengroumlszligten Teil der totalen Varianz erklaumlren muumlssen Die zweite Uumlberlegung istdie dass eine Reduzierung der Variablenanzahl nur moumlglich ist wenn ein

Seite 7 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 2: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Vorbemerkung

Die Statistiksoftware und Programmierumgebung R wird von einer internationalen Entwickler-gemeinschaft als Opensourcesoftware entwickelt und kann von jedermann entsprechend der GNUGeneral Public License Version 2 (Juni 1991) frei genutzt und auch weiter verbreitet werden DieSoftware wird auf der Homepage des R - Projektes (httpwwwr-projectorg) als Downloadbereitgestellt

R erfreut sich als Statistiksoftware zunehmender Beliebtheit Dies ist nicht nur der Tatsachegeschuldet dass R frei zugaumlnglich und kostenfrei ist Vielmehr bietet R nahezu unbegrenzte undflexible Moumlglichkeiten zur Durchfuumlhrung statistischer Analysen Will man die Vorzuumlge von Rnutzen sollte man mit zwei Dingen rechnen R ist ein sogenanntes Konsolenprogramm Es kommtohne die heute uumlblichen Fenster- und Menuumlauswahltechniken daher Man muss die Sprache von Rerst erlernen - was insbesondere dem windows - verwoumlhnten User anfangs schwer faumlllt - bevor manmit dem Programm arbeiten kann Ist diese Huumlrde nach kurzer Zeit uumlberwunden wird man durchdas dann komfortable Arbeiten mit der Software mehr als entschaumldigt Zweitens sollte man mit derstatistischen Theorie etwas vertraut sein R bietet keine vorgefertigten Analysebausteine wie etwaSPSS Der Nutzer muss die einzelnen Schritte einer statistischen Analyse kennen und sich einerelevante Berechnungsprozedur erst suchen bzwzusammenstellen Das ist sicherlich die Haupt-schwierigkeit bei der Arbeit mit R Das Suchen nach dem richtigen Befehl ist manchmal sehraufwendig Hat man diesen aber einmal gefunden sind die Berechnungen selbst im Handumdrehenerledigt

Die Leitfaumlden zur Arbeit mit R sollen den Einstieg in die Arbeit mit R erleichtern Der Leserfindet hier auf das Wesentliche beschraumlnkte Anleitungen zur Durchfuumlhrung statistischer Standard-analysen an Hand einfacher Beispiele Damit erhaumllt er ein Grundgeruumlst das eigene Analysen schnellzum Erfolg fuumlhren kann Die Betonung liegt jedoch auf kann Keineswegs darf man erwarten damitfuumlr alle Fragestellungen ein Rezept zur Hand zu haben

Auf die Darstellung mathematisch-statistischer Theorie wird in der Scriptenreihe weitgehendverzichtet Der Autor geht davon aus dass diese in Statistikbuumlchern etc nachgeschlagen werdenkann bzw der Leser hinlaumlnglich damit vertraut ist

Eine kurze Einfuumlhrung in die Arbeit mit R wird soweit das fuumlr statistische (Standard) - Analysenerforderlich scheint in einem gesonderten Script abgehandelt Das vorliegende Material setzt grund-legende Kenntnisse hierzu voraus Der fuumlr die Berechnungen erforderliche R- Code wird dann auchzumeist ohne Kommentar angegeben Fuumlr die Berechnungen wurde das neueste Release R 211genutzt Auf Abweichungen hiervon und auf Probleme bei der Nutzung aumllterer Versionen von Rwird jeweils gesondert hingewiesen

Bernburg September 2005

H Grunert

Seite 2 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Inhalt

1 Hauptkomponentenmethode (PCA)

11 Faktoranalyse oder PCA 12 Der empirische Befund

2 Die Prozedur pca multiv

21 Berechnung der Anfangsloumlsung22 Berechnung der rotierten Loumlsung23 Eignung der Ausgangsdaten fuumlr eine PCA24 Bewertung der rotierten Loumlsung

3 Die Prozedur prcomp stats

4 Literatur amp Quellen

Seite 3 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

1 Hauptkomponentenmethode (Principal Components Analysis)11 Faktoranalyse oder PCA

Die Faktorenanalyse versucht ein haumlufig umfangreiches Variablenset durch einige wenige vonein-ander unabhaumlngige Komponenten (Faktoren) so zu ersetzen dass die wesentlichen Beziehungen inden Ausgangsdaten durch die Komponenten reproduziert werden Genauer gesagt sollen die Kom-ponenten die Variabilitaumlt der Ausgangsdaten gemessen als Summe der Varianzen der Ausgangs-variablen (totale Varianz) moumlglichst vollstaumlndig erklaumlren koumlnnen Die Komponenten sind hypothe-tische Konstrukte Man kann sie sich als Ausgleichsgeraden zwischen den Werten der Variablenaumlhnlich wie bei der multiplen linearen Regression vorstellen Dabei wird in der Regel so vorgegan-gen dass eine erste Komponente so berechnet (extrahiert) wird dass sie die gesamte Summe derquadratischen Abweichungen aller Variablen zu sich selbst minimiert Anders formuliert wird derdurch die Komponente erklaumlrte Varianzanteil aller Variablen maximiert Eine zweite Komponentewird meist orthogonal zur ersten bestimmt Diese wiederum erklaumlrt ein Maximum der verbleibendennicht erklaumlrten Gesamtvarianz Das Verfahren wird so weiter gefuumlhrt bis theoretisch die gesamteVarianz aller Variablen erklaumlrt wird

Die Faktoranalyse ist dabei keine bestimmte Methode Unter dem Begriff Faktoranalyse fasst manvielmehr eine Reihe unterschiedlichster Verfahren zusammen Zum Ersten waumlre hier die Faktor-analyse (FA) genannt Die FA geht davon aus dass die Variabilitaumlt der Ausgangsdaten durch dasgleichzeitige Wirken gemeinsamer Faktoren der Variablen und spezieller Faktoren vollstaumlndigerklaumlrt werden kann Die speziellen Faktoren erklaumlren dabei die sogenannte Einzelrestvarianz vonVariablen die nicht durch die gemeinsamen Faktoren erfasst wird Zum Zweiten waumlre dieHauptkomponentenanalyse (PCA) zu nennen Die PCA geht davon aus dass eine begrenzte Anzahlvon noch zu bestimmenden Faktoren existiert die die Variabilitaumlt der Ausgangsvariablen maximal(also nicht vollstaumlndig) erklaumlren koumlnnen Im Ergebnis bleibt gewissermaszligen ein Rest nicht erklaumlrterVarianz uumlbrig der sich als Residuum bestimmen laumlsst Dh die Einzelrestvarianzen sind im Gegen-satz zur FA nicht Bestandteil des statistischen Modells

Grundsaumltzlich kann die Bestimmung der Komponenten innerhalb der PCA auf zwei Wegenerfolgen Die Hauptkomponentenmethode versucht den Anteil der erklaumlrten Gesamtvarianz in derog Weise zu maximieren Dh ganz praktisch dass die Anzahl der zu extrahierenden Komponen-ten ergibt sich erst im Lauf der Berechnung Die Hauptfaktorenanalyse (auch Hauptachsenana-lyse) auf der anderen Seite geht davon aus dass es agrave priori einige Komponenten geben muss die dieGesamtvarianz erklaumlren Diese sind uU auch bekannt Dh die Berechnungen beschraumlnken sicheigentlich darauf die Variablen diesen bekannten Komponenten (Hauptachsen) zuzuordnenWerden zB Abundanzen eines Bachflohkrebses in Abhaumlngigkeit des pH-Wertes verschiedenerGewaumlsser ermittelt so stellt der pH-Wert eben eine bekannte Hauptachse (auch Gradient) dar Mankann also hier bestimmen inwieweit sich Gewaumlsser entlang der Achse pH-Wert anordnen lassenIm Ergebnis wird die totale Varianz wieder maximal auf die Faktoren verteilt und es bleibt haumlufigein nicht erklaumlrter Rest bestehen

Im naturwissenschaftlichen Kontext zaumlhlt die PCA zu den Ordinationstechniken Es wird versuchtdie gemessenen Variablen Komponenten Achsen Gradienten zuzuordnen Die Hauptkomponen-tenmethode waumlre hier ein Verfahren der indirekten Ordination die Hauptachsenanalyse einVerfahren der direkten Ordination

Seite 4 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Ein drittes Verfahren der Faktorenanalyse ist die Maximum-Likelihood - Faktorenanalyse (ML-FA) Hierbei handelt es sich um eine Faktoranalyse (FA) bei der nicht die empirischen Daten alsGrundlage der Faktorextraktion dienen Zur Berechnung werden die entsprechenden ML- Schaumltzerverwendet Die ML-FA entspricht damit eigentlich der Stichprobensituation bei empirischenUntersuchungen am besten

12 Berechnung einer PCA

In diesem Script soll die Hauptkomponentenmethode beschrieben werden die im weiteren als PCAbezeichnet wird

Fuumlr die weiteren Darlegungen sind zwei Voraussetzungen wichtig Wir gehen davon aus dass dieAusgangsdaten intervallskaliert und wenigstens annaumlhernd normalverteilt sind Liegt keineNormalverteilung vor sollte diese durch ein geeignetes Verfahren erreicht werden1 Zwischen denVariablen sollten daruumlberhinaus lineare Beziehungen bestehen2

Die Grundlage der Bestimmung der Komponenten sind in der Regel die Korrelationen (genauerProdukt-Moment-Korrelationen) bzw die Korrelationsmatrix der Ausgangsvariablen Eine hoheKorrelation zwischen zwei Variablen kann so gedeutet werden dass sie durch einen nicht beobacht-baren Faktor (latenter Faktor) bewirkt wird der hinter diesen Variablen steht Die Variablen weisendann natuumlrlich hohe Korrelationen zu diesen Faktoren selbst auf Die latenten Faktoren waumlren diezu extrahierenden Komponenten Die Korrelationen der Variablen zu den Komponenten bezeichnetman als Faktorladungen

Neben den Korrelationen werden haumlufig auch Kovarianzen zur Faktorextraktion herangezogenDie Verwendung der Kovarianzen bzw der Kovarianzmatrix ist immer dann angebracht wenn dieAusgangsdaten ohne weitere Transformation verwendet werden koumlnnen und Variablen mit dergroumlszligeren Variabilitaumlt staumlrker zu beruumlcksichtigen sind Sehr oft haben die Ausgangsdaten aberunterschiedliche Maszligeinheiten und dementsprechend auch Groumlszligenordnungen Hier ist eineTransformation der Daten in eine vergleichbare Skalierung notwendig Dies wird im allgemeinendurch Zentrieren der Daten oder eine z- Standardisierung erreicht Werden die Ausgangsdaten z-standardisiert sind Korrelations- und Kovarianzmatrizen gleich Die Berechnungsgrundlage fuumlr dieFaktorenanalyse waumlre in diesem Fall automatisch die Korrelationsmatrix Die Korrelationsmatrixwird also dann genutzt wenn die Maszligeiheiten Ausgangsdaten vergleichbar sind und alle Variablengleich behandelt werden sollen Spezielle Anwendungsgebiete erfordern daruumlberhinaus imVorfeld der PCA spezifische Datentransformationen So werden Daten im Rahmen biologischerUntersuchungen haumlufig logarithmiert

1 Ein geeignetes Verfahren waumlre zB die Logarithmierung der Daten2 Ist dies nicht der Fall muumlsste an Stelle der PCA versucht werden zB eine Korrespondenzanalyse (CA DCA) zu

rechnen

Seite 5 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Zusammenfassend lassen sich folgende Hinweise hinsichtlich der Berechnungsgrundlagen einerPCA zusammenstellen

Untersuchungsgegenstand Berechnungsgrundlage Datentransformation Abundanzwerte Kovarianzmatrix ZentrierungUmweltvariable Korrelationsmatrix Standardisierung

biologische Daten Kovarianzmatrix Logarithmierungoumlkonomische Daten Korrelationsmatrix Standardisierung

Die Berechnung einer PCA laumlszligt sich ohne auf die mathematischen Details weiter einzugehen wiefolgt in einzelnen Arbeitsschritten skizzieren

1 Schritt Die Ausgangsdaten der Berechnung muumlssen als Matrix vorliegen Die Zeilen derMatrix enthalten dabei die Untersuchungsobjekte und die Spalten die Untersuchungs-kriterien (Variablen)Ausgangspunkt ist die Korrelationsmatrix der Ausgangsvariablen R Fuumlr diese Matrix werden die Matrix der Eigenvektoren V und der Vektor der Eigenwerte λberechnet3 Die Anzahl der Eigenwerte ist gleich der Anzahl der Variablen bzw Faktoren DieSumme der Eigenwerte einer Korrelationsmatrix ist gleich der Anzahl der Ausgangs-variablen und gleich der Summe der gesamten aufzuklaumlrenden Varianz4 Die Matrix der Eigenvektoren ist die sogenannte Transformationsmatrix5 mit derenHilfe die gesuchten Faktoren bestimmt werden Die Matrix der Eigenvektoren istquadratisch Die Zeilen beziehen sich auf die Variablen die Spalten stellen die zubestimmenden Faktoren dar Es werden also soviele Faktoren bestimmt wie Variab-len in die Untersuchung einbezogen werden6 Die Elemente der Matrix sind so dieTransformationskoeffizienten der jeweiligen Variable bezuumlglich eines bestimmtenFaktors Die Eigenwerte zeigen nun welcher Varianzanteil durch einen Faktor aufgeklaumlrtwerden kann Da die Eigenwerte sukzessive durch ein Dekompositionsverfahrenbestimmt werden ergibt sich zwangslaumlufig dass der erste Eigenwert auch dengroumlszligten Varianzanteil erklaumlrt der zweite Eigenwert den zweitgroumlszligten Anteil usw

3 Dies kann auch separat mit dem Befehl eigen stats erfolgen4 Die Summe der Eigenwerte einer quadratischen Matrix ist immer gleich der Summe der Varianzen der Variablen

(=totale Quadratsumme aller Variablen) Diese wiederum ergibt sich aus der Summe der Diagonalelemente derquadratischen Matrix Bei einer Korrelationsmatrix weisen die Diagonalelemente wegen der Standardisierung derKovarianzen den Werte 1 auf Dh die gesamte Varianz bzw die Summe der Eigenwerte ist gleich der Anzahl derVariablen

5 Der Eigenvektor ist der zu einem bestimmten Eigenwert gehoumlrende Transformationsvektor Dieser Transformations-vektor dient zur Bestimmung von sog homologen Linearkombinationen der Variablen die sich durch eine maximaleVarianz der Ausgangsvariablen auszeichnen Es wird damit gewissermaszligen ein Faktor bestimmt der die Varianzmaximal erklaumlren kann siehe dazu ua Bortz 4

6 Allerdings ist dies in R praktisch auf maximal 7 Faktoren beschraumlnkt

Seite 6 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Schritt Der zweite Schritt besteht in der Bestimmung der gesuchten Faktoren Dies geschiehtindirekt dadurch dass man nun die Korrelationen zwischen den Variablen und denhypothetischen Faktoren den Faktorladungen berechnet Dies wird durch die Multi-plikation der Eigenwerte mit der Transformationsmatrix erreicht Im Ergebnis erhaumlltman die quadratische Faktorladungsmatrix A nach folgender Formel

A = V middot diag λ

An Hand der Faktorladungen kann man erkennen welche Variablen mit welchemFaktor hoch korrelieren welche Variablen also diesem Faktor zugeordnet werdenkoumlnnen Variablen die auf einen bestimmten Faktor nicht hoch laden koumlnnen dannggf einem anderen Faktor auf den sie wiederum hoch laden zugeordnet werdenusw

3 Schritt Im dritten Schritt werden als eigentliches Ziel der PCA die Werte der Untersuchungs-objekte auf den Faktoren (Faktorwerte scores) berechnetDazu benoumltigt man die z-standardisierten Ausgangswerte Diese Matrix wollen wirmit Z bezeichnen die Matrix der Faktorwerte mit F Die Faktorwerte ergeben sichnach folgender Formel

F = Z middot V middot diag λminus12

diag λminus12 Diagonalmatrix der reziproken Werte der Standardabweichungen

der Faktoren (= reziproker Wert der Wurzel aus den Eigenwerten)

Das gleiche Ergebnis erhaumllt man auch unter Verwendung der Faktorladungen mitfolgender Formel

F = Z middot A middot (AT middotA)-1

Die Faktorwerte zeigen den Wert der Objekte bezuumlglich der Faktoren (Koordinatender Objekte im Faktorraum) Ein hoher Wert beispielsweise weist darauf hin dassdie Variable stark durch den Faktor beeinflusst wirdBei der Interpretation muss beruumlcksichtigt werden dass es sich um standardisierteWerte handelt (siehe weiter unten) Daruumlberhinaus sind die Vorzeichen inhaltlicheBedeutung etc der Ausgangsdaten zu beachten

4 Schritt Das Anliegen der PCA besteht in der Reduzierung der Ausgangvariablen aufwenige voneinander unabhaumlngige Faktoren Bis zu diesem Punkt werden im Prinzipgenauso viele Faktoren bestimmt wie Variablen in die Berechnung eingehen Dh esmuszlig nun an dieser Stelle eine Auswahl von relevanten Faktoren vorgenommenwerden Dafuumlr gibt es einige MoumlglichkeitenEine Grunduumlberlegung besteht darin dass die auszuwaumlhlenden Faktoren dengroumlszligten Teil der totalen Varianz erklaumlren muumlssen Die zweite Uumlberlegung istdie dass eine Reduzierung der Variablenanzahl nur moumlglich ist wenn ein

Seite 7 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 3: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Inhalt

1 Hauptkomponentenmethode (PCA)

11 Faktoranalyse oder PCA 12 Der empirische Befund

2 Die Prozedur pca multiv

21 Berechnung der Anfangsloumlsung22 Berechnung der rotierten Loumlsung23 Eignung der Ausgangsdaten fuumlr eine PCA24 Bewertung der rotierten Loumlsung

3 Die Prozedur prcomp stats

4 Literatur amp Quellen

Seite 3 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

1 Hauptkomponentenmethode (Principal Components Analysis)11 Faktoranalyse oder PCA

Die Faktorenanalyse versucht ein haumlufig umfangreiches Variablenset durch einige wenige vonein-ander unabhaumlngige Komponenten (Faktoren) so zu ersetzen dass die wesentlichen Beziehungen inden Ausgangsdaten durch die Komponenten reproduziert werden Genauer gesagt sollen die Kom-ponenten die Variabilitaumlt der Ausgangsdaten gemessen als Summe der Varianzen der Ausgangs-variablen (totale Varianz) moumlglichst vollstaumlndig erklaumlren koumlnnen Die Komponenten sind hypothe-tische Konstrukte Man kann sie sich als Ausgleichsgeraden zwischen den Werten der Variablenaumlhnlich wie bei der multiplen linearen Regression vorstellen Dabei wird in der Regel so vorgegan-gen dass eine erste Komponente so berechnet (extrahiert) wird dass sie die gesamte Summe derquadratischen Abweichungen aller Variablen zu sich selbst minimiert Anders formuliert wird derdurch die Komponente erklaumlrte Varianzanteil aller Variablen maximiert Eine zweite Komponentewird meist orthogonal zur ersten bestimmt Diese wiederum erklaumlrt ein Maximum der verbleibendennicht erklaumlrten Gesamtvarianz Das Verfahren wird so weiter gefuumlhrt bis theoretisch die gesamteVarianz aller Variablen erklaumlrt wird

Die Faktoranalyse ist dabei keine bestimmte Methode Unter dem Begriff Faktoranalyse fasst manvielmehr eine Reihe unterschiedlichster Verfahren zusammen Zum Ersten waumlre hier die Faktor-analyse (FA) genannt Die FA geht davon aus dass die Variabilitaumlt der Ausgangsdaten durch dasgleichzeitige Wirken gemeinsamer Faktoren der Variablen und spezieller Faktoren vollstaumlndigerklaumlrt werden kann Die speziellen Faktoren erklaumlren dabei die sogenannte Einzelrestvarianz vonVariablen die nicht durch die gemeinsamen Faktoren erfasst wird Zum Zweiten waumlre dieHauptkomponentenanalyse (PCA) zu nennen Die PCA geht davon aus dass eine begrenzte Anzahlvon noch zu bestimmenden Faktoren existiert die die Variabilitaumlt der Ausgangsvariablen maximal(also nicht vollstaumlndig) erklaumlren koumlnnen Im Ergebnis bleibt gewissermaszligen ein Rest nicht erklaumlrterVarianz uumlbrig der sich als Residuum bestimmen laumlsst Dh die Einzelrestvarianzen sind im Gegen-satz zur FA nicht Bestandteil des statistischen Modells

Grundsaumltzlich kann die Bestimmung der Komponenten innerhalb der PCA auf zwei Wegenerfolgen Die Hauptkomponentenmethode versucht den Anteil der erklaumlrten Gesamtvarianz in derog Weise zu maximieren Dh ganz praktisch dass die Anzahl der zu extrahierenden Komponen-ten ergibt sich erst im Lauf der Berechnung Die Hauptfaktorenanalyse (auch Hauptachsenana-lyse) auf der anderen Seite geht davon aus dass es agrave priori einige Komponenten geben muss die dieGesamtvarianz erklaumlren Diese sind uU auch bekannt Dh die Berechnungen beschraumlnken sicheigentlich darauf die Variablen diesen bekannten Komponenten (Hauptachsen) zuzuordnenWerden zB Abundanzen eines Bachflohkrebses in Abhaumlngigkeit des pH-Wertes verschiedenerGewaumlsser ermittelt so stellt der pH-Wert eben eine bekannte Hauptachse (auch Gradient) dar Mankann also hier bestimmen inwieweit sich Gewaumlsser entlang der Achse pH-Wert anordnen lassenIm Ergebnis wird die totale Varianz wieder maximal auf die Faktoren verteilt und es bleibt haumlufigein nicht erklaumlrter Rest bestehen

Im naturwissenschaftlichen Kontext zaumlhlt die PCA zu den Ordinationstechniken Es wird versuchtdie gemessenen Variablen Komponenten Achsen Gradienten zuzuordnen Die Hauptkomponen-tenmethode waumlre hier ein Verfahren der indirekten Ordination die Hauptachsenanalyse einVerfahren der direkten Ordination

Seite 4 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Ein drittes Verfahren der Faktorenanalyse ist die Maximum-Likelihood - Faktorenanalyse (ML-FA) Hierbei handelt es sich um eine Faktoranalyse (FA) bei der nicht die empirischen Daten alsGrundlage der Faktorextraktion dienen Zur Berechnung werden die entsprechenden ML- Schaumltzerverwendet Die ML-FA entspricht damit eigentlich der Stichprobensituation bei empirischenUntersuchungen am besten

12 Berechnung einer PCA

In diesem Script soll die Hauptkomponentenmethode beschrieben werden die im weiteren als PCAbezeichnet wird

Fuumlr die weiteren Darlegungen sind zwei Voraussetzungen wichtig Wir gehen davon aus dass dieAusgangsdaten intervallskaliert und wenigstens annaumlhernd normalverteilt sind Liegt keineNormalverteilung vor sollte diese durch ein geeignetes Verfahren erreicht werden1 Zwischen denVariablen sollten daruumlberhinaus lineare Beziehungen bestehen2

Die Grundlage der Bestimmung der Komponenten sind in der Regel die Korrelationen (genauerProdukt-Moment-Korrelationen) bzw die Korrelationsmatrix der Ausgangsvariablen Eine hoheKorrelation zwischen zwei Variablen kann so gedeutet werden dass sie durch einen nicht beobacht-baren Faktor (latenter Faktor) bewirkt wird der hinter diesen Variablen steht Die Variablen weisendann natuumlrlich hohe Korrelationen zu diesen Faktoren selbst auf Die latenten Faktoren waumlren diezu extrahierenden Komponenten Die Korrelationen der Variablen zu den Komponenten bezeichnetman als Faktorladungen

Neben den Korrelationen werden haumlufig auch Kovarianzen zur Faktorextraktion herangezogenDie Verwendung der Kovarianzen bzw der Kovarianzmatrix ist immer dann angebracht wenn dieAusgangsdaten ohne weitere Transformation verwendet werden koumlnnen und Variablen mit dergroumlszligeren Variabilitaumlt staumlrker zu beruumlcksichtigen sind Sehr oft haben die Ausgangsdaten aberunterschiedliche Maszligeinheiten und dementsprechend auch Groumlszligenordnungen Hier ist eineTransformation der Daten in eine vergleichbare Skalierung notwendig Dies wird im allgemeinendurch Zentrieren der Daten oder eine z- Standardisierung erreicht Werden die Ausgangsdaten z-standardisiert sind Korrelations- und Kovarianzmatrizen gleich Die Berechnungsgrundlage fuumlr dieFaktorenanalyse waumlre in diesem Fall automatisch die Korrelationsmatrix Die Korrelationsmatrixwird also dann genutzt wenn die Maszligeiheiten Ausgangsdaten vergleichbar sind und alle Variablengleich behandelt werden sollen Spezielle Anwendungsgebiete erfordern daruumlberhinaus imVorfeld der PCA spezifische Datentransformationen So werden Daten im Rahmen biologischerUntersuchungen haumlufig logarithmiert

1 Ein geeignetes Verfahren waumlre zB die Logarithmierung der Daten2 Ist dies nicht der Fall muumlsste an Stelle der PCA versucht werden zB eine Korrespondenzanalyse (CA DCA) zu

rechnen

Seite 5 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Zusammenfassend lassen sich folgende Hinweise hinsichtlich der Berechnungsgrundlagen einerPCA zusammenstellen

Untersuchungsgegenstand Berechnungsgrundlage Datentransformation Abundanzwerte Kovarianzmatrix ZentrierungUmweltvariable Korrelationsmatrix Standardisierung

biologische Daten Kovarianzmatrix Logarithmierungoumlkonomische Daten Korrelationsmatrix Standardisierung

Die Berechnung einer PCA laumlszligt sich ohne auf die mathematischen Details weiter einzugehen wiefolgt in einzelnen Arbeitsschritten skizzieren

1 Schritt Die Ausgangsdaten der Berechnung muumlssen als Matrix vorliegen Die Zeilen derMatrix enthalten dabei die Untersuchungsobjekte und die Spalten die Untersuchungs-kriterien (Variablen)Ausgangspunkt ist die Korrelationsmatrix der Ausgangsvariablen R Fuumlr diese Matrix werden die Matrix der Eigenvektoren V und der Vektor der Eigenwerte λberechnet3 Die Anzahl der Eigenwerte ist gleich der Anzahl der Variablen bzw Faktoren DieSumme der Eigenwerte einer Korrelationsmatrix ist gleich der Anzahl der Ausgangs-variablen und gleich der Summe der gesamten aufzuklaumlrenden Varianz4 Die Matrix der Eigenvektoren ist die sogenannte Transformationsmatrix5 mit derenHilfe die gesuchten Faktoren bestimmt werden Die Matrix der Eigenvektoren istquadratisch Die Zeilen beziehen sich auf die Variablen die Spalten stellen die zubestimmenden Faktoren dar Es werden also soviele Faktoren bestimmt wie Variab-len in die Untersuchung einbezogen werden6 Die Elemente der Matrix sind so dieTransformationskoeffizienten der jeweiligen Variable bezuumlglich eines bestimmtenFaktors Die Eigenwerte zeigen nun welcher Varianzanteil durch einen Faktor aufgeklaumlrtwerden kann Da die Eigenwerte sukzessive durch ein Dekompositionsverfahrenbestimmt werden ergibt sich zwangslaumlufig dass der erste Eigenwert auch dengroumlszligten Varianzanteil erklaumlrt der zweite Eigenwert den zweitgroumlszligten Anteil usw

3 Dies kann auch separat mit dem Befehl eigen stats erfolgen4 Die Summe der Eigenwerte einer quadratischen Matrix ist immer gleich der Summe der Varianzen der Variablen

(=totale Quadratsumme aller Variablen) Diese wiederum ergibt sich aus der Summe der Diagonalelemente derquadratischen Matrix Bei einer Korrelationsmatrix weisen die Diagonalelemente wegen der Standardisierung derKovarianzen den Werte 1 auf Dh die gesamte Varianz bzw die Summe der Eigenwerte ist gleich der Anzahl derVariablen

5 Der Eigenvektor ist der zu einem bestimmten Eigenwert gehoumlrende Transformationsvektor Dieser Transformations-vektor dient zur Bestimmung von sog homologen Linearkombinationen der Variablen die sich durch eine maximaleVarianz der Ausgangsvariablen auszeichnen Es wird damit gewissermaszligen ein Faktor bestimmt der die Varianzmaximal erklaumlren kann siehe dazu ua Bortz 4

6 Allerdings ist dies in R praktisch auf maximal 7 Faktoren beschraumlnkt

Seite 6 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Schritt Der zweite Schritt besteht in der Bestimmung der gesuchten Faktoren Dies geschiehtindirekt dadurch dass man nun die Korrelationen zwischen den Variablen und denhypothetischen Faktoren den Faktorladungen berechnet Dies wird durch die Multi-plikation der Eigenwerte mit der Transformationsmatrix erreicht Im Ergebnis erhaumlltman die quadratische Faktorladungsmatrix A nach folgender Formel

A = V middot diag λ

An Hand der Faktorladungen kann man erkennen welche Variablen mit welchemFaktor hoch korrelieren welche Variablen also diesem Faktor zugeordnet werdenkoumlnnen Variablen die auf einen bestimmten Faktor nicht hoch laden koumlnnen dannggf einem anderen Faktor auf den sie wiederum hoch laden zugeordnet werdenusw

3 Schritt Im dritten Schritt werden als eigentliches Ziel der PCA die Werte der Untersuchungs-objekte auf den Faktoren (Faktorwerte scores) berechnetDazu benoumltigt man die z-standardisierten Ausgangswerte Diese Matrix wollen wirmit Z bezeichnen die Matrix der Faktorwerte mit F Die Faktorwerte ergeben sichnach folgender Formel

F = Z middot V middot diag λminus12

diag λminus12 Diagonalmatrix der reziproken Werte der Standardabweichungen

der Faktoren (= reziproker Wert der Wurzel aus den Eigenwerten)

Das gleiche Ergebnis erhaumllt man auch unter Verwendung der Faktorladungen mitfolgender Formel

F = Z middot A middot (AT middotA)-1

Die Faktorwerte zeigen den Wert der Objekte bezuumlglich der Faktoren (Koordinatender Objekte im Faktorraum) Ein hoher Wert beispielsweise weist darauf hin dassdie Variable stark durch den Faktor beeinflusst wirdBei der Interpretation muss beruumlcksichtigt werden dass es sich um standardisierteWerte handelt (siehe weiter unten) Daruumlberhinaus sind die Vorzeichen inhaltlicheBedeutung etc der Ausgangsdaten zu beachten

4 Schritt Das Anliegen der PCA besteht in der Reduzierung der Ausgangvariablen aufwenige voneinander unabhaumlngige Faktoren Bis zu diesem Punkt werden im Prinzipgenauso viele Faktoren bestimmt wie Variablen in die Berechnung eingehen Dh esmuszlig nun an dieser Stelle eine Auswahl von relevanten Faktoren vorgenommenwerden Dafuumlr gibt es einige MoumlglichkeitenEine Grunduumlberlegung besteht darin dass die auszuwaumlhlenden Faktoren dengroumlszligten Teil der totalen Varianz erklaumlren muumlssen Die zweite Uumlberlegung istdie dass eine Reduzierung der Variablenanzahl nur moumlglich ist wenn ein

Seite 7 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 4: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

1 Hauptkomponentenmethode (Principal Components Analysis)11 Faktoranalyse oder PCA

Die Faktorenanalyse versucht ein haumlufig umfangreiches Variablenset durch einige wenige vonein-ander unabhaumlngige Komponenten (Faktoren) so zu ersetzen dass die wesentlichen Beziehungen inden Ausgangsdaten durch die Komponenten reproduziert werden Genauer gesagt sollen die Kom-ponenten die Variabilitaumlt der Ausgangsdaten gemessen als Summe der Varianzen der Ausgangs-variablen (totale Varianz) moumlglichst vollstaumlndig erklaumlren koumlnnen Die Komponenten sind hypothe-tische Konstrukte Man kann sie sich als Ausgleichsgeraden zwischen den Werten der Variablenaumlhnlich wie bei der multiplen linearen Regression vorstellen Dabei wird in der Regel so vorgegan-gen dass eine erste Komponente so berechnet (extrahiert) wird dass sie die gesamte Summe derquadratischen Abweichungen aller Variablen zu sich selbst minimiert Anders formuliert wird derdurch die Komponente erklaumlrte Varianzanteil aller Variablen maximiert Eine zweite Komponentewird meist orthogonal zur ersten bestimmt Diese wiederum erklaumlrt ein Maximum der verbleibendennicht erklaumlrten Gesamtvarianz Das Verfahren wird so weiter gefuumlhrt bis theoretisch die gesamteVarianz aller Variablen erklaumlrt wird

Die Faktoranalyse ist dabei keine bestimmte Methode Unter dem Begriff Faktoranalyse fasst manvielmehr eine Reihe unterschiedlichster Verfahren zusammen Zum Ersten waumlre hier die Faktor-analyse (FA) genannt Die FA geht davon aus dass die Variabilitaumlt der Ausgangsdaten durch dasgleichzeitige Wirken gemeinsamer Faktoren der Variablen und spezieller Faktoren vollstaumlndigerklaumlrt werden kann Die speziellen Faktoren erklaumlren dabei die sogenannte Einzelrestvarianz vonVariablen die nicht durch die gemeinsamen Faktoren erfasst wird Zum Zweiten waumlre dieHauptkomponentenanalyse (PCA) zu nennen Die PCA geht davon aus dass eine begrenzte Anzahlvon noch zu bestimmenden Faktoren existiert die die Variabilitaumlt der Ausgangsvariablen maximal(also nicht vollstaumlndig) erklaumlren koumlnnen Im Ergebnis bleibt gewissermaszligen ein Rest nicht erklaumlrterVarianz uumlbrig der sich als Residuum bestimmen laumlsst Dh die Einzelrestvarianzen sind im Gegen-satz zur FA nicht Bestandteil des statistischen Modells

Grundsaumltzlich kann die Bestimmung der Komponenten innerhalb der PCA auf zwei Wegenerfolgen Die Hauptkomponentenmethode versucht den Anteil der erklaumlrten Gesamtvarianz in derog Weise zu maximieren Dh ganz praktisch dass die Anzahl der zu extrahierenden Komponen-ten ergibt sich erst im Lauf der Berechnung Die Hauptfaktorenanalyse (auch Hauptachsenana-lyse) auf der anderen Seite geht davon aus dass es agrave priori einige Komponenten geben muss die dieGesamtvarianz erklaumlren Diese sind uU auch bekannt Dh die Berechnungen beschraumlnken sicheigentlich darauf die Variablen diesen bekannten Komponenten (Hauptachsen) zuzuordnenWerden zB Abundanzen eines Bachflohkrebses in Abhaumlngigkeit des pH-Wertes verschiedenerGewaumlsser ermittelt so stellt der pH-Wert eben eine bekannte Hauptachse (auch Gradient) dar Mankann also hier bestimmen inwieweit sich Gewaumlsser entlang der Achse pH-Wert anordnen lassenIm Ergebnis wird die totale Varianz wieder maximal auf die Faktoren verteilt und es bleibt haumlufigein nicht erklaumlrter Rest bestehen

Im naturwissenschaftlichen Kontext zaumlhlt die PCA zu den Ordinationstechniken Es wird versuchtdie gemessenen Variablen Komponenten Achsen Gradienten zuzuordnen Die Hauptkomponen-tenmethode waumlre hier ein Verfahren der indirekten Ordination die Hauptachsenanalyse einVerfahren der direkten Ordination

Seite 4 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Ein drittes Verfahren der Faktorenanalyse ist die Maximum-Likelihood - Faktorenanalyse (ML-FA) Hierbei handelt es sich um eine Faktoranalyse (FA) bei der nicht die empirischen Daten alsGrundlage der Faktorextraktion dienen Zur Berechnung werden die entsprechenden ML- Schaumltzerverwendet Die ML-FA entspricht damit eigentlich der Stichprobensituation bei empirischenUntersuchungen am besten

12 Berechnung einer PCA

In diesem Script soll die Hauptkomponentenmethode beschrieben werden die im weiteren als PCAbezeichnet wird

Fuumlr die weiteren Darlegungen sind zwei Voraussetzungen wichtig Wir gehen davon aus dass dieAusgangsdaten intervallskaliert und wenigstens annaumlhernd normalverteilt sind Liegt keineNormalverteilung vor sollte diese durch ein geeignetes Verfahren erreicht werden1 Zwischen denVariablen sollten daruumlberhinaus lineare Beziehungen bestehen2

Die Grundlage der Bestimmung der Komponenten sind in der Regel die Korrelationen (genauerProdukt-Moment-Korrelationen) bzw die Korrelationsmatrix der Ausgangsvariablen Eine hoheKorrelation zwischen zwei Variablen kann so gedeutet werden dass sie durch einen nicht beobacht-baren Faktor (latenter Faktor) bewirkt wird der hinter diesen Variablen steht Die Variablen weisendann natuumlrlich hohe Korrelationen zu diesen Faktoren selbst auf Die latenten Faktoren waumlren diezu extrahierenden Komponenten Die Korrelationen der Variablen zu den Komponenten bezeichnetman als Faktorladungen

Neben den Korrelationen werden haumlufig auch Kovarianzen zur Faktorextraktion herangezogenDie Verwendung der Kovarianzen bzw der Kovarianzmatrix ist immer dann angebracht wenn dieAusgangsdaten ohne weitere Transformation verwendet werden koumlnnen und Variablen mit dergroumlszligeren Variabilitaumlt staumlrker zu beruumlcksichtigen sind Sehr oft haben die Ausgangsdaten aberunterschiedliche Maszligeinheiten und dementsprechend auch Groumlszligenordnungen Hier ist eineTransformation der Daten in eine vergleichbare Skalierung notwendig Dies wird im allgemeinendurch Zentrieren der Daten oder eine z- Standardisierung erreicht Werden die Ausgangsdaten z-standardisiert sind Korrelations- und Kovarianzmatrizen gleich Die Berechnungsgrundlage fuumlr dieFaktorenanalyse waumlre in diesem Fall automatisch die Korrelationsmatrix Die Korrelationsmatrixwird also dann genutzt wenn die Maszligeiheiten Ausgangsdaten vergleichbar sind und alle Variablengleich behandelt werden sollen Spezielle Anwendungsgebiete erfordern daruumlberhinaus imVorfeld der PCA spezifische Datentransformationen So werden Daten im Rahmen biologischerUntersuchungen haumlufig logarithmiert

1 Ein geeignetes Verfahren waumlre zB die Logarithmierung der Daten2 Ist dies nicht der Fall muumlsste an Stelle der PCA versucht werden zB eine Korrespondenzanalyse (CA DCA) zu

rechnen

Seite 5 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Zusammenfassend lassen sich folgende Hinweise hinsichtlich der Berechnungsgrundlagen einerPCA zusammenstellen

Untersuchungsgegenstand Berechnungsgrundlage Datentransformation Abundanzwerte Kovarianzmatrix ZentrierungUmweltvariable Korrelationsmatrix Standardisierung

biologische Daten Kovarianzmatrix Logarithmierungoumlkonomische Daten Korrelationsmatrix Standardisierung

Die Berechnung einer PCA laumlszligt sich ohne auf die mathematischen Details weiter einzugehen wiefolgt in einzelnen Arbeitsschritten skizzieren

1 Schritt Die Ausgangsdaten der Berechnung muumlssen als Matrix vorliegen Die Zeilen derMatrix enthalten dabei die Untersuchungsobjekte und die Spalten die Untersuchungs-kriterien (Variablen)Ausgangspunkt ist die Korrelationsmatrix der Ausgangsvariablen R Fuumlr diese Matrix werden die Matrix der Eigenvektoren V und der Vektor der Eigenwerte λberechnet3 Die Anzahl der Eigenwerte ist gleich der Anzahl der Variablen bzw Faktoren DieSumme der Eigenwerte einer Korrelationsmatrix ist gleich der Anzahl der Ausgangs-variablen und gleich der Summe der gesamten aufzuklaumlrenden Varianz4 Die Matrix der Eigenvektoren ist die sogenannte Transformationsmatrix5 mit derenHilfe die gesuchten Faktoren bestimmt werden Die Matrix der Eigenvektoren istquadratisch Die Zeilen beziehen sich auf die Variablen die Spalten stellen die zubestimmenden Faktoren dar Es werden also soviele Faktoren bestimmt wie Variab-len in die Untersuchung einbezogen werden6 Die Elemente der Matrix sind so dieTransformationskoeffizienten der jeweiligen Variable bezuumlglich eines bestimmtenFaktors Die Eigenwerte zeigen nun welcher Varianzanteil durch einen Faktor aufgeklaumlrtwerden kann Da die Eigenwerte sukzessive durch ein Dekompositionsverfahrenbestimmt werden ergibt sich zwangslaumlufig dass der erste Eigenwert auch dengroumlszligten Varianzanteil erklaumlrt der zweite Eigenwert den zweitgroumlszligten Anteil usw

3 Dies kann auch separat mit dem Befehl eigen stats erfolgen4 Die Summe der Eigenwerte einer quadratischen Matrix ist immer gleich der Summe der Varianzen der Variablen

(=totale Quadratsumme aller Variablen) Diese wiederum ergibt sich aus der Summe der Diagonalelemente derquadratischen Matrix Bei einer Korrelationsmatrix weisen die Diagonalelemente wegen der Standardisierung derKovarianzen den Werte 1 auf Dh die gesamte Varianz bzw die Summe der Eigenwerte ist gleich der Anzahl derVariablen

5 Der Eigenvektor ist der zu einem bestimmten Eigenwert gehoumlrende Transformationsvektor Dieser Transformations-vektor dient zur Bestimmung von sog homologen Linearkombinationen der Variablen die sich durch eine maximaleVarianz der Ausgangsvariablen auszeichnen Es wird damit gewissermaszligen ein Faktor bestimmt der die Varianzmaximal erklaumlren kann siehe dazu ua Bortz 4

6 Allerdings ist dies in R praktisch auf maximal 7 Faktoren beschraumlnkt

Seite 6 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Schritt Der zweite Schritt besteht in der Bestimmung der gesuchten Faktoren Dies geschiehtindirekt dadurch dass man nun die Korrelationen zwischen den Variablen und denhypothetischen Faktoren den Faktorladungen berechnet Dies wird durch die Multi-plikation der Eigenwerte mit der Transformationsmatrix erreicht Im Ergebnis erhaumlltman die quadratische Faktorladungsmatrix A nach folgender Formel

A = V middot diag λ

An Hand der Faktorladungen kann man erkennen welche Variablen mit welchemFaktor hoch korrelieren welche Variablen also diesem Faktor zugeordnet werdenkoumlnnen Variablen die auf einen bestimmten Faktor nicht hoch laden koumlnnen dannggf einem anderen Faktor auf den sie wiederum hoch laden zugeordnet werdenusw

3 Schritt Im dritten Schritt werden als eigentliches Ziel der PCA die Werte der Untersuchungs-objekte auf den Faktoren (Faktorwerte scores) berechnetDazu benoumltigt man die z-standardisierten Ausgangswerte Diese Matrix wollen wirmit Z bezeichnen die Matrix der Faktorwerte mit F Die Faktorwerte ergeben sichnach folgender Formel

F = Z middot V middot diag λminus12

diag λminus12 Diagonalmatrix der reziproken Werte der Standardabweichungen

der Faktoren (= reziproker Wert der Wurzel aus den Eigenwerten)

Das gleiche Ergebnis erhaumllt man auch unter Verwendung der Faktorladungen mitfolgender Formel

F = Z middot A middot (AT middotA)-1

Die Faktorwerte zeigen den Wert der Objekte bezuumlglich der Faktoren (Koordinatender Objekte im Faktorraum) Ein hoher Wert beispielsweise weist darauf hin dassdie Variable stark durch den Faktor beeinflusst wirdBei der Interpretation muss beruumlcksichtigt werden dass es sich um standardisierteWerte handelt (siehe weiter unten) Daruumlberhinaus sind die Vorzeichen inhaltlicheBedeutung etc der Ausgangsdaten zu beachten

4 Schritt Das Anliegen der PCA besteht in der Reduzierung der Ausgangvariablen aufwenige voneinander unabhaumlngige Faktoren Bis zu diesem Punkt werden im Prinzipgenauso viele Faktoren bestimmt wie Variablen in die Berechnung eingehen Dh esmuszlig nun an dieser Stelle eine Auswahl von relevanten Faktoren vorgenommenwerden Dafuumlr gibt es einige MoumlglichkeitenEine Grunduumlberlegung besteht darin dass die auszuwaumlhlenden Faktoren dengroumlszligten Teil der totalen Varianz erklaumlren muumlssen Die zweite Uumlberlegung istdie dass eine Reduzierung der Variablenanzahl nur moumlglich ist wenn ein

Seite 7 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 5: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Ein drittes Verfahren der Faktorenanalyse ist die Maximum-Likelihood - Faktorenanalyse (ML-FA) Hierbei handelt es sich um eine Faktoranalyse (FA) bei der nicht die empirischen Daten alsGrundlage der Faktorextraktion dienen Zur Berechnung werden die entsprechenden ML- Schaumltzerverwendet Die ML-FA entspricht damit eigentlich der Stichprobensituation bei empirischenUntersuchungen am besten

12 Berechnung einer PCA

In diesem Script soll die Hauptkomponentenmethode beschrieben werden die im weiteren als PCAbezeichnet wird

Fuumlr die weiteren Darlegungen sind zwei Voraussetzungen wichtig Wir gehen davon aus dass dieAusgangsdaten intervallskaliert und wenigstens annaumlhernd normalverteilt sind Liegt keineNormalverteilung vor sollte diese durch ein geeignetes Verfahren erreicht werden1 Zwischen denVariablen sollten daruumlberhinaus lineare Beziehungen bestehen2

Die Grundlage der Bestimmung der Komponenten sind in der Regel die Korrelationen (genauerProdukt-Moment-Korrelationen) bzw die Korrelationsmatrix der Ausgangsvariablen Eine hoheKorrelation zwischen zwei Variablen kann so gedeutet werden dass sie durch einen nicht beobacht-baren Faktor (latenter Faktor) bewirkt wird der hinter diesen Variablen steht Die Variablen weisendann natuumlrlich hohe Korrelationen zu diesen Faktoren selbst auf Die latenten Faktoren waumlren diezu extrahierenden Komponenten Die Korrelationen der Variablen zu den Komponenten bezeichnetman als Faktorladungen

Neben den Korrelationen werden haumlufig auch Kovarianzen zur Faktorextraktion herangezogenDie Verwendung der Kovarianzen bzw der Kovarianzmatrix ist immer dann angebracht wenn dieAusgangsdaten ohne weitere Transformation verwendet werden koumlnnen und Variablen mit dergroumlszligeren Variabilitaumlt staumlrker zu beruumlcksichtigen sind Sehr oft haben die Ausgangsdaten aberunterschiedliche Maszligeinheiten und dementsprechend auch Groumlszligenordnungen Hier ist eineTransformation der Daten in eine vergleichbare Skalierung notwendig Dies wird im allgemeinendurch Zentrieren der Daten oder eine z- Standardisierung erreicht Werden die Ausgangsdaten z-standardisiert sind Korrelations- und Kovarianzmatrizen gleich Die Berechnungsgrundlage fuumlr dieFaktorenanalyse waumlre in diesem Fall automatisch die Korrelationsmatrix Die Korrelationsmatrixwird also dann genutzt wenn die Maszligeiheiten Ausgangsdaten vergleichbar sind und alle Variablengleich behandelt werden sollen Spezielle Anwendungsgebiete erfordern daruumlberhinaus imVorfeld der PCA spezifische Datentransformationen So werden Daten im Rahmen biologischerUntersuchungen haumlufig logarithmiert

1 Ein geeignetes Verfahren waumlre zB die Logarithmierung der Daten2 Ist dies nicht der Fall muumlsste an Stelle der PCA versucht werden zB eine Korrespondenzanalyse (CA DCA) zu

rechnen

Seite 5 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Zusammenfassend lassen sich folgende Hinweise hinsichtlich der Berechnungsgrundlagen einerPCA zusammenstellen

Untersuchungsgegenstand Berechnungsgrundlage Datentransformation Abundanzwerte Kovarianzmatrix ZentrierungUmweltvariable Korrelationsmatrix Standardisierung

biologische Daten Kovarianzmatrix Logarithmierungoumlkonomische Daten Korrelationsmatrix Standardisierung

Die Berechnung einer PCA laumlszligt sich ohne auf die mathematischen Details weiter einzugehen wiefolgt in einzelnen Arbeitsschritten skizzieren

1 Schritt Die Ausgangsdaten der Berechnung muumlssen als Matrix vorliegen Die Zeilen derMatrix enthalten dabei die Untersuchungsobjekte und die Spalten die Untersuchungs-kriterien (Variablen)Ausgangspunkt ist die Korrelationsmatrix der Ausgangsvariablen R Fuumlr diese Matrix werden die Matrix der Eigenvektoren V und der Vektor der Eigenwerte λberechnet3 Die Anzahl der Eigenwerte ist gleich der Anzahl der Variablen bzw Faktoren DieSumme der Eigenwerte einer Korrelationsmatrix ist gleich der Anzahl der Ausgangs-variablen und gleich der Summe der gesamten aufzuklaumlrenden Varianz4 Die Matrix der Eigenvektoren ist die sogenannte Transformationsmatrix5 mit derenHilfe die gesuchten Faktoren bestimmt werden Die Matrix der Eigenvektoren istquadratisch Die Zeilen beziehen sich auf die Variablen die Spalten stellen die zubestimmenden Faktoren dar Es werden also soviele Faktoren bestimmt wie Variab-len in die Untersuchung einbezogen werden6 Die Elemente der Matrix sind so dieTransformationskoeffizienten der jeweiligen Variable bezuumlglich eines bestimmtenFaktors Die Eigenwerte zeigen nun welcher Varianzanteil durch einen Faktor aufgeklaumlrtwerden kann Da die Eigenwerte sukzessive durch ein Dekompositionsverfahrenbestimmt werden ergibt sich zwangslaumlufig dass der erste Eigenwert auch dengroumlszligten Varianzanteil erklaumlrt der zweite Eigenwert den zweitgroumlszligten Anteil usw

3 Dies kann auch separat mit dem Befehl eigen stats erfolgen4 Die Summe der Eigenwerte einer quadratischen Matrix ist immer gleich der Summe der Varianzen der Variablen

(=totale Quadratsumme aller Variablen) Diese wiederum ergibt sich aus der Summe der Diagonalelemente derquadratischen Matrix Bei einer Korrelationsmatrix weisen die Diagonalelemente wegen der Standardisierung derKovarianzen den Werte 1 auf Dh die gesamte Varianz bzw die Summe der Eigenwerte ist gleich der Anzahl derVariablen

5 Der Eigenvektor ist der zu einem bestimmten Eigenwert gehoumlrende Transformationsvektor Dieser Transformations-vektor dient zur Bestimmung von sog homologen Linearkombinationen der Variablen die sich durch eine maximaleVarianz der Ausgangsvariablen auszeichnen Es wird damit gewissermaszligen ein Faktor bestimmt der die Varianzmaximal erklaumlren kann siehe dazu ua Bortz 4

6 Allerdings ist dies in R praktisch auf maximal 7 Faktoren beschraumlnkt

Seite 6 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Schritt Der zweite Schritt besteht in der Bestimmung der gesuchten Faktoren Dies geschiehtindirekt dadurch dass man nun die Korrelationen zwischen den Variablen und denhypothetischen Faktoren den Faktorladungen berechnet Dies wird durch die Multi-plikation der Eigenwerte mit der Transformationsmatrix erreicht Im Ergebnis erhaumlltman die quadratische Faktorladungsmatrix A nach folgender Formel

A = V middot diag λ

An Hand der Faktorladungen kann man erkennen welche Variablen mit welchemFaktor hoch korrelieren welche Variablen also diesem Faktor zugeordnet werdenkoumlnnen Variablen die auf einen bestimmten Faktor nicht hoch laden koumlnnen dannggf einem anderen Faktor auf den sie wiederum hoch laden zugeordnet werdenusw

3 Schritt Im dritten Schritt werden als eigentliches Ziel der PCA die Werte der Untersuchungs-objekte auf den Faktoren (Faktorwerte scores) berechnetDazu benoumltigt man die z-standardisierten Ausgangswerte Diese Matrix wollen wirmit Z bezeichnen die Matrix der Faktorwerte mit F Die Faktorwerte ergeben sichnach folgender Formel

F = Z middot V middot diag λminus12

diag λminus12 Diagonalmatrix der reziproken Werte der Standardabweichungen

der Faktoren (= reziproker Wert der Wurzel aus den Eigenwerten)

Das gleiche Ergebnis erhaumllt man auch unter Verwendung der Faktorladungen mitfolgender Formel

F = Z middot A middot (AT middotA)-1

Die Faktorwerte zeigen den Wert der Objekte bezuumlglich der Faktoren (Koordinatender Objekte im Faktorraum) Ein hoher Wert beispielsweise weist darauf hin dassdie Variable stark durch den Faktor beeinflusst wirdBei der Interpretation muss beruumlcksichtigt werden dass es sich um standardisierteWerte handelt (siehe weiter unten) Daruumlberhinaus sind die Vorzeichen inhaltlicheBedeutung etc der Ausgangsdaten zu beachten

4 Schritt Das Anliegen der PCA besteht in der Reduzierung der Ausgangvariablen aufwenige voneinander unabhaumlngige Faktoren Bis zu diesem Punkt werden im Prinzipgenauso viele Faktoren bestimmt wie Variablen in die Berechnung eingehen Dh esmuszlig nun an dieser Stelle eine Auswahl von relevanten Faktoren vorgenommenwerden Dafuumlr gibt es einige MoumlglichkeitenEine Grunduumlberlegung besteht darin dass die auszuwaumlhlenden Faktoren dengroumlszligten Teil der totalen Varianz erklaumlren muumlssen Die zweite Uumlberlegung istdie dass eine Reduzierung der Variablenanzahl nur moumlglich ist wenn ein

Seite 7 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 6: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Zusammenfassend lassen sich folgende Hinweise hinsichtlich der Berechnungsgrundlagen einerPCA zusammenstellen

Untersuchungsgegenstand Berechnungsgrundlage Datentransformation Abundanzwerte Kovarianzmatrix ZentrierungUmweltvariable Korrelationsmatrix Standardisierung

biologische Daten Kovarianzmatrix Logarithmierungoumlkonomische Daten Korrelationsmatrix Standardisierung

Die Berechnung einer PCA laumlszligt sich ohne auf die mathematischen Details weiter einzugehen wiefolgt in einzelnen Arbeitsschritten skizzieren

1 Schritt Die Ausgangsdaten der Berechnung muumlssen als Matrix vorliegen Die Zeilen derMatrix enthalten dabei die Untersuchungsobjekte und die Spalten die Untersuchungs-kriterien (Variablen)Ausgangspunkt ist die Korrelationsmatrix der Ausgangsvariablen R Fuumlr diese Matrix werden die Matrix der Eigenvektoren V und der Vektor der Eigenwerte λberechnet3 Die Anzahl der Eigenwerte ist gleich der Anzahl der Variablen bzw Faktoren DieSumme der Eigenwerte einer Korrelationsmatrix ist gleich der Anzahl der Ausgangs-variablen und gleich der Summe der gesamten aufzuklaumlrenden Varianz4 Die Matrix der Eigenvektoren ist die sogenannte Transformationsmatrix5 mit derenHilfe die gesuchten Faktoren bestimmt werden Die Matrix der Eigenvektoren istquadratisch Die Zeilen beziehen sich auf die Variablen die Spalten stellen die zubestimmenden Faktoren dar Es werden also soviele Faktoren bestimmt wie Variab-len in die Untersuchung einbezogen werden6 Die Elemente der Matrix sind so dieTransformationskoeffizienten der jeweiligen Variable bezuumlglich eines bestimmtenFaktors Die Eigenwerte zeigen nun welcher Varianzanteil durch einen Faktor aufgeklaumlrtwerden kann Da die Eigenwerte sukzessive durch ein Dekompositionsverfahrenbestimmt werden ergibt sich zwangslaumlufig dass der erste Eigenwert auch dengroumlszligten Varianzanteil erklaumlrt der zweite Eigenwert den zweitgroumlszligten Anteil usw

3 Dies kann auch separat mit dem Befehl eigen stats erfolgen4 Die Summe der Eigenwerte einer quadratischen Matrix ist immer gleich der Summe der Varianzen der Variablen

(=totale Quadratsumme aller Variablen) Diese wiederum ergibt sich aus der Summe der Diagonalelemente derquadratischen Matrix Bei einer Korrelationsmatrix weisen die Diagonalelemente wegen der Standardisierung derKovarianzen den Werte 1 auf Dh die gesamte Varianz bzw die Summe der Eigenwerte ist gleich der Anzahl derVariablen

5 Der Eigenvektor ist der zu einem bestimmten Eigenwert gehoumlrende Transformationsvektor Dieser Transformations-vektor dient zur Bestimmung von sog homologen Linearkombinationen der Variablen die sich durch eine maximaleVarianz der Ausgangsvariablen auszeichnen Es wird damit gewissermaszligen ein Faktor bestimmt der die Varianzmaximal erklaumlren kann siehe dazu ua Bortz 4

6 Allerdings ist dies in R praktisch auf maximal 7 Faktoren beschraumlnkt

Seite 6 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Schritt Der zweite Schritt besteht in der Bestimmung der gesuchten Faktoren Dies geschiehtindirekt dadurch dass man nun die Korrelationen zwischen den Variablen und denhypothetischen Faktoren den Faktorladungen berechnet Dies wird durch die Multi-plikation der Eigenwerte mit der Transformationsmatrix erreicht Im Ergebnis erhaumlltman die quadratische Faktorladungsmatrix A nach folgender Formel

A = V middot diag λ

An Hand der Faktorladungen kann man erkennen welche Variablen mit welchemFaktor hoch korrelieren welche Variablen also diesem Faktor zugeordnet werdenkoumlnnen Variablen die auf einen bestimmten Faktor nicht hoch laden koumlnnen dannggf einem anderen Faktor auf den sie wiederum hoch laden zugeordnet werdenusw

3 Schritt Im dritten Schritt werden als eigentliches Ziel der PCA die Werte der Untersuchungs-objekte auf den Faktoren (Faktorwerte scores) berechnetDazu benoumltigt man die z-standardisierten Ausgangswerte Diese Matrix wollen wirmit Z bezeichnen die Matrix der Faktorwerte mit F Die Faktorwerte ergeben sichnach folgender Formel

F = Z middot V middot diag λminus12

diag λminus12 Diagonalmatrix der reziproken Werte der Standardabweichungen

der Faktoren (= reziproker Wert der Wurzel aus den Eigenwerten)

Das gleiche Ergebnis erhaumllt man auch unter Verwendung der Faktorladungen mitfolgender Formel

F = Z middot A middot (AT middotA)-1

Die Faktorwerte zeigen den Wert der Objekte bezuumlglich der Faktoren (Koordinatender Objekte im Faktorraum) Ein hoher Wert beispielsweise weist darauf hin dassdie Variable stark durch den Faktor beeinflusst wirdBei der Interpretation muss beruumlcksichtigt werden dass es sich um standardisierteWerte handelt (siehe weiter unten) Daruumlberhinaus sind die Vorzeichen inhaltlicheBedeutung etc der Ausgangsdaten zu beachten

4 Schritt Das Anliegen der PCA besteht in der Reduzierung der Ausgangvariablen aufwenige voneinander unabhaumlngige Faktoren Bis zu diesem Punkt werden im Prinzipgenauso viele Faktoren bestimmt wie Variablen in die Berechnung eingehen Dh esmuszlig nun an dieser Stelle eine Auswahl von relevanten Faktoren vorgenommenwerden Dafuumlr gibt es einige MoumlglichkeitenEine Grunduumlberlegung besteht darin dass die auszuwaumlhlenden Faktoren dengroumlszligten Teil der totalen Varianz erklaumlren muumlssen Die zweite Uumlberlegung istdie dass eine Reduzierung der Variablenanzahl nur moumlglich ist wenn ein

Seite 7 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 7: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Schritt Der zweite Schritt besteht in der Bestimmung der gesuchten Faktoren Dies geschiehtindirekt dadurch dass man nun die Korrelationen zwischen den Variablen und denhypothetischen Faktoren den Faktorladungen berechnet Dies wird durch die Multi-plikation der Eigenwerte mit der Transformationsmatrix erreicht Im Ergebnis erhaumlltman die quadratische Faktorladungsmatrix A nach folgender Formel

A = V middot diag λ

An Hand der Faktorladungen kann man erkennen welche Variablen mit welchemFaktor hoch korrelieren welche Variablen also diesem Faktor zugeordnet werdenkoumlnnen Variablen die auf einen bestimmten Faktor nicht hoch laden koumlnnen dannggf einem anderen Faktor auf den sie wiederum hoch laden zugeordnet werdenusw

3 Schritt Im dritten Schritt werden als eigentliches Ziel der PCA die Werte der Untersuchungs-objekte auf den Faktoren (Faktorwerte scores) berechnetDazu benoumltigt man die z-standardisierten Ausgangswerte Diese Matrix wollen wirmit Z bezeichnen die Matrix der Faktorwerte mit F Die Faktorwerte ergeben sichnach folgender Formel

F = Z middot V middot diag λminus12

diag λminus12 Diagonalmatrix der reziproken Werte der Standardabweichungen

der Faktoren (= reziproker Wert der Wurzel aus den Eigenwerten)

Das gleiche Ergebnis erhaumllt man auch unter Verwendung der Faktorladungen mitfolgender Formel

F = Z middot A middot (AT middotA)-1

Die Faktorwerte zeigen den Wert der Objekte bezuumlglich der Faktoren (Koordinatender Objekte im Faktorraum) Ein hoher Wert beispielsweise weist darauf hin dassdie Variable stark durch den Faktor beeinflusst wirdBei der Interpretation muss beruumlcksichtigt werden dass es sich um standardisierteWerte handelt (siehe weiter unten) Daruumlberhinaus sind die Vorzeichen inhaltlicheBedeutung etc der Ausgangsdaten zu beachten

4 Schritt Das Anliegen der PCA besteht in der Reduzierung der Ausgangvariablen aufwenige voneinander unabhaumlngige Faktoren Bis zu diesem Punkt werden im Prinzipgenauso viele Faktoren bestimmt wie Variablen in die Berechnung eingehen Dh esmuszlig nun an dieser Stelle eine Auswahl von relevanten Faktoren vorgenommenwerden Dafuumlr gibt es einige MoumlglichkeitenEine Grunduumlberlegung besteht darin dass die auszuwaumlhlenden Faktoren dengroumlszligten Teil der totalen Varianz erklaumlren muumlssen Die zweite Uumlberlegung istdie dass eine Reduzierung der Variablenanzahl nur moumlglich ist wenn ein

Seite 7 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 8: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Faktor mehr als die Varianz einer Variable erklaumlrt dh sein Eigenwert groumlszliger als einsist (Kaiser-Kriterium) In der Praxis zeigt sich dass beide Kriterien bereits oft vonzwei bis drei Faktoren erfuumlllt werdenDie konkrete Auswahl wird nun haumlufig an hand des sogenannten Kaiser- Kriteriumsvorgenommen Alle Faktoren mit einem Eigenwert groumlszliger als eins bilden demnachdas Ergebnis der PCA Der erklaumlrte Anteil der totalen Varianz ergibt sich kumulativaus den einzelnen EigenwertanteilenEine zweite Moumlglichkeit besteht in der Anfertigung eines Screeplots (auch Scree-Test) Der Screeplot zeigt durch eine Linie in aufsteigender Groumlszlige kumulativ dieEigenwerte Sind Faktoren mit groszligen Eigenwerten vorhanden wird diese Linieeinen groszligen Anstieg aufweisen Man kann dadurch ersehen welche Faktorenausgewaumlhlt werden sollten Der erklaumlrte Anteil der totalen Varianz ergibt sich dannebenfalls kumulativ Das Ergebnis stimmt haumlufig mit dem bei der Anwendung desKaiser-Kriteriums uumlbereinEin weiteres Auswahlverfahren waumlre der Signifikanztest fuumlr Faktoren von BartlettHier wird vereinfacht gesagt getestet ab welchem Faktor sich die erklaumlrte Varianznicht mehr signifikant aumlndert7

5 Schritt Die berechneten Faktoren passen mitunter nicht optimal zu den VariablenOder anders gesagt ist es nicht immer einfach die Variablen den Faktoren zuzu-ordnen Dieses Problem kann man beheben in dem man die berechneten Faktorensolange dreht (rotiert) bis die Zuordnung der Variablen eindeutig is (Einfachstruk-tur)Die ausgewaumlhlten Faktoren kann man als Achsen eines orthogonalen Koordinaten-systems auffassen (Orthogonalitaumlt bedeutet in diesem Zusammenhang Unabhaumlngig-keit der Faktoren) Die Variablen und Untersuchungsobjekte koumlnnen in diesesKoordinatensystem eingezeichnet werden Man kann demnach sehen welcheVariablen und Objekte wie eng bei welchen Faktoren liegen (Faktorladungen Fak-torwerte) Eine orthogonale Rotation der Koordinatenachsen Faktoren um den Koordinaten-ursprung um einen bestimmten Winkel veraumlndert die Lage der Variablen undUntersuchungsobjekte zu den Koordinatenachsen und damit natuumlrlich auch ihreFaktorladungen Die orthogonale Rotation veraumlndert dabei aber nicht den gesamtenAnteil der durch die ausgewaumlhlten Faktoren erklaumlrten totalen Varianz Dieser bleibtimmer gleich Dh die Rotation verteilt die aufgeklaumlrte totale Varianz neu auf dieFaktorenDas fuumlr praktische Untersuchungen uumlbliche Rotationsverfahren ist die sogenannteVARIMAX - Rotation Hierbei wird die Rotation in einem ersten Schritt soweitdurchgefuumlhrt bis der durch den ersten Faktor erklaumlrte Varianzanteil maximiert istDann erfolgt die Rotation des zweiten Faktors ebenfalls mit dem Ziel der Maximie-rung des erklaumlrten (Rest-) Varianzanteils usw Aus den rotierten Faktorladungen koumlnnen die Kommunalitaumlten berechnet werdenKommunalitaumlten geben den Anteil der Varianz einer Variable an der durch diegemeinsamen Faktoren erklaumlrt werden kann Sie koumlnnen demnach maximal den Wert 1 annehmen Berechnet werden sie als Summe der quadrierten Faktorladungen(siehe Beispiel)

7 siehe hierzu Fahrmeir Hamerle Tutz Multivariate statistische Verfahren 2

Seite 8 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 9: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird rechnerisch in den meisten Statistikprogrammeniterativ durchgefuumlhrt bis der optimale Rotationswinkel feststeht Daneben laumlsst sichdieser Winkel zumindest fuumlr zwei Faktoren relativ einfach auch aus den Faktorla-dungen bestimmen8

6 Schritt Die PCA waumlre unvollstaumlndig wenn nicht zum Abschluss noch die Faktorwerte derrotierten Faktoren (der Einfachstruktur) berechnet wuumlrden Dies ist ein mitunterschwieriges Problem da sich die erforderlichen Matrixoperationen nicht so ohneWeiteres durchfuumlhren lassen In diesem Fall werden die Faktorwerte zB durchRegressionsschaumltzungen ermitteltAnalytisch lassen sich nun die Faktorwerte nach der Rotation durch die folgendeGleichung bestimmen

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

In R lassen sich diese Arbeitsschritte nicht alle durch Prozeduren realisieren Dh man mussgelegentlich einige Matrixoperationen per Hand durchfuumlhren Auch ergeben sich einige Werte-differenzen zu den SPSS-Ergebnissen die wohl ihre Ursachen in programmtechnischen Besonder-heiten (zB Rechengenauigkeit etc) haben duumlrften

Im Folgenden soll nun versucht werden die og Arbeitsschritte unter Einbindung der R-Prozedurenzu realisieren

8 siehe dazu Bortz 4

Seite 9 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 10: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

13 Der empirische Befund

Die PCA soll an einem einfachen Beispiel der Beurteilung von sechs bekannten Streichfetten durchHausfrauen an Hand von fuumlnf Eigenschaften auf einer 7-stelligen Skala (1 niedrig 7 hoch)dargestellt werden9

Die Ausgangsdaten sind unter cDatenMargarine_6sav abgespeichert Mit dem Befehl readspssforeign werden die Daten in R importiert Sie sollen im Objekt a gespeichert werden

gtalt-readspss(cDatenMargarine_6savtodataframe=TRUEusevaluelabels=FALSE)

Die Ausgangsdaten zeigt nachstehende Tabelle

Streichfett EigenschaftenA B C D E

Rama 1 1 2 1 4Sanella 2 6 3 3 5

Becel 4 5 4 4 5Du Darfst 5 6 6 2 3

Hollaumlndische Butter 2 3 3 5 7Weihnachtsbutter 3 4 4 6 7

A Anteil ungesaumlttigter Fettsaumluren D HaltbarkeitB Kaloriengehalt E PreisC Vitamingehalt

Die Untersuchung koumlnnte also darauf gerichtet sein (latente) Faktoren zu bestimmen die dieseBewertung gewissermaszligen im Hinterkopf der Hausfrauen bestimmt haben Ziel muumlsste es seindie fuumlnf Bewertungskriterien weiter zu verdichten so dass die Streichfette nur noch und das sei dasvorweggenommene Ergebnis anhand von 2 Kriterien (Faktoren) moumlglichst ohne Informationsver-lust bewertet werden koumlnnen

Zur Vorbereitung der Berechnung sind die Daten in Matrixform zu organisieren Als erstes werdenentsprechende Variablennamen vergeben um auf die Daten einfacher zugreifen zu koumlnnen

gtnames (a) [1]lt-markengtnames (a) [2]lt-fettgtnames (a) [3]lt-calgtnames (a) [4]lt-vitagtnames (a) [5]lt-haltgtnames (a) [6]lt-preis

9 Das Beispiel stammt aus Backhaus et al 3 Die Daten werden auch in den Lehrveranstaltungen verwendet

Seite 10 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 11: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Anschlieszligend wird die Datenmatrix am einfachsten mit dem Befehl cbind base erzeugt und imObjekt amat gespeichert

gtamatlt-cbind(a$fetta$cala$vitaa$halta$preis)

Da die Bewertungen der Hausfrauen alle gleich skaliert sind koumlnnen wir die Korrelationsmatrix alsBerechnungsgrundlage heranziehen Die Korrelationsmatrix wird mit dem Befehl cor baseerzeugt und im Objekt acor gespeichert

gtacorlt-cor(amat)gtacor

[1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Die Korrelationskoeffizienten sind sehr unterschiedlich ausgepraumlgt Zwischen den Variablen fett[1] cal [2] und vita [3]10 bestehen wechselseitig recht hohe Korrelationen waumlhrend sie gleichzeitigzu halt [4] und preis [5] vergleichsweise niedrig sind Das gleiche gilt auch umgekehrt Es kann alsovermutet werden dass ein Faktor hinter den Variablen fett cal vita steht der die gleichlaufendenBewertungen in allen drei Variablen bewirkt und gleichzeitig die weniger gleichlaumlufigen Bewertun-gen bei den Variablen halt und preis (und umgekehrt) Diese Faktoren gilt es nun zu extrahieren

10 Die Nummern beziehen sich auf die Indexierung der Zeilen und Spalten der Korrelationsmatrix

Seite 11 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 12: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

2 Die Prozedur pca multiv

Zur Berechnung einer PCA existieren in R eine Reihe von Prozeduren die jede fuumlr sich genommeneine spezielle Variante der PCA darstellt In diesem Script sollen die Prozeduren pca multiv undprcomp stats beschrieben werden da sie mit den Berechnungen in SPSS vergleichbare Ergebnissebringen SPSS rechnet eine sogenannte Q-mode- PCA Viele andere Statistikprogramme wie zBMVSP SYSTAT sowie auch die R-Prozedur princomp stats berechnen sogenannte R-mode-PCA Der Unterschied zwischen beiden Berechnungen besteht hauptsaumlchlich in der Skalierung derFaktorladungen Bei der R-mode-PCA hat die Summe der quadrierten Ladungen eines Faktors denWert 1 Die Faktorwerte werden so skaliert dass die Summe der quadrierten Faktorwerte gleichdem Eigenwert des Faktors ist Die Q-mode-PCA verwendet eine andere Skalierung Hier ist dieSumme der quadrierten Faktorladungen gleich dem Wert des Eigenwertes des Faktors

PCA multiv ist eine Prozedur die von den R-Entwicklern nicht mehr weiterentwickelt wird11 Sieist nur noch mit aumllteren R-Versionen (hier R 141) lauffaumlhig Die PCA-Prozeduren sind aktuell inder Library stats enthalten PCA multiv wurde dabei nicht einfach uumlbernommen sondern eswurde eine neue Prozedur prcomp stats entwickelt12

21 Berechnung der Anfangsloumlsung

Die Prozedur pca multivsetzt wie bereits dargelegt eine aumlltere R-Version voraus Hier wurde R141 genutzt Diese Version ist uumlber die Website des R-Projektes erhaumlltlich

Die Prozedur erlaubt 8 verschiedene Methoden zur Berechnung der PCA

bull Methode 1 Berechnung ohne irgendeine Transformation der Ausgangsdatenauf der Basis der Kreuzproduktmatrizen

bull Methode 2 Berechnung mit Zentrierung der Ausgangsdaten (Mittelwert=0)auf der Basis der sums of squares und der Varianz-Kovarianz-Matrix

bull Methode 3 Berechnung mit Standardisierung der Ausgangsdaten auf der Basis derKorrelationsmatrix

bull Methode 4 Berechnung mit normierten Ausgangsdaten auf der Basis der Varianz-Kovarianz-Matrix

bull Methode 5 Berechnung auf der Basis der Rangkorrelationsmatrix (Kendall)bull Methode 6 Berechnung auf der Basis der Rangkorrelationsmatrix (Spearman)bull Methode 7 Berechnung auf der Basis der Stichproben-Kovarianzmatrixbull Methode 8 Berechnung auf der Basis der Stichproben-Korrelationsmatrix

Sie ist damit sehr vielseitig und kann ein breites Spektrum unterschiedlicher Untersuchungssitua-tionen fuumlr die PCA abdecken Standardmaumlszligig wird die Methode 3 gerechnet

Zur Berechnung der PCA wird folgender einfache Befehl formuliert

gtapcalt-pca(amat method=3)

11 Die Library multiv wird insgesamt nicht weiterentwickelt Gleichwohl ist sie als orphaned library auf denCRAN-Servern verfuumlgbar

12 Daruumlberhinaus wurde neu noch die Prozedur factanal stats entwickelt die eine Maximum-Likelihood-Faktoranalyse (ML-FA) rechnet

Seite 12 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 13: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man standardmaumlszligig folgende Angaben

gt apca$rproj Comp1 Comp2 Comp3 Comp4 Comp5[1] 12347731 -052402479 017629279 000923080 0019206967[2] 01013547 -014675801 -054097264 -002801038 0007749233[3] -04035383 002964648 001284962 017289900 -0011476047[4] -08974213 -078614444 015935036 -007029814 -0013785555[5] 02482758 070138684 007503104 -004820823 -0078959749[6] -02834440 072589393 011744883 -003561306 0077265151

$cproj Comp1 Comp2 Comp3 Comp4 Comp5[1] -09373203 -02292284 0222609610 0138027216 -0016684660[2] -08427593 -01599771 -0513935976 -0003722207 -0004473799[3] -09286194 -02539406 0232904962 -0136783279 0015027455[4] -03423812 09358470 0001307886 0025901727 0079327534[5] -02770477 09568039 0027937288 -0029191558 -0078346939

$evals[1] 264512698 193390747 036871215 003929808 001295532

$evecs Comp1 Comp2 Comp3 Comp4 Comp5[1] -05763214 -01648354 0366606521 069627222 -014658628[2] -05181796 -01150376 -0846379811 -001877651 -003930542[3] -05709716 -01826057 0383561508 -068999723 013202659[4] -02105168 06729565 0002153903 013066012 069694727[5] -01703457 06880264 0046008759 -014725553 -068833207

Unter $evecs sind die Eigenvektoren der Korrelationsmatrix der Ausgangsdaten gespeichert $evalsenthaumllt die Eigenwerte der Korrelationsmatrix Mit $cproj (column projection) sind die Faktorla-dungen der Variablen auf die gesuchten Faktoren bezeichnet $rproj (row projection) enthaumllt dieFaktorwerte also die Werte der Untersuchungsobjekte auf den Faktoren

Von besonderem Interesse sind die Eigenwerte der Korrelationsmatrix ($evals) Dabei handelt essich zugleich um die Eigenwerte der zu extrahierenden Faktoren13 Insgesamt werden genausovieleFaktoren wie Ausgangsvariablen extrahiert Die Eigenwerte geben den Anteil der Gesamtvariabilitaumltder Variablen an die ein Faktor erklaumlrt Jede Variable weist (wegen der Standardisierung) eineVariabilitaumlt (Varianz) von 1 auf Dh durch die PCA ist insgesamt eine totale Varianz von 5 (=Anzahl der Variablen) aufzuklaumlren Der Faktor 1 (Comp1) erklaumlrt demnach 2645 der Gesamtvaria-bilitaumlt Comp 2 erklaumlrt 1934 Die anderen Faktoren weisen Werte unter 1 auf Dh sie erklaumlrenweniger Varianz als eine Variable aufweist Interessant fuumlr die weitere Auswertung und Interpreta-

13 Die Faktorextraktion ist faktisch gleichzusetzen mit der Bestimmung der Eigenvektoren und Eigenwerte derKorrelationsmatrix Die Berechnung erfolgt unter Nutzung der Prozedur eigen base die eine Spectral Decom-position einer Matrix durchfuumlhrt

Seite 13 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 14: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

tion sind davon ausgehend nur die beiden ersten extrahierten Faktoren Zusammen erklaumlren sieimmerhin eine Variabilitaumlt von 4579 oder 916 der gesamten Variabilitaumlt der Ausgangsdaten

Mit Hilfe der Eigenvektoren und Eigenwerte koumlnnen wie im Punkt 11 skizziert die Faktorla-dungen der Variablen (hier $cproj) berechnet werden Die Faktorladungen berechnen sich alsProdukt aus den Eigenvektoren und den Quadratwurzeln der Eigenwerte

$cproj = $evecs middot $evals

Die Faktorladungen zeigen welche Variable (Zeilen der Matrix) nun stark mit welchem Faktor(Spalten der Matrix) korrelieren Anders gesagt zeigen sie welcher Faktor hinter welchen Variablenwirken koumlnnte Hier ist ganz deutlich dass die ersten drei Variablen (fett cal vita) zB hoch aufden Faktor 1 laden (mit ihm stark korrelieren) nicht aber auf den Faktor 2 Die Variablen 4 und 5(halt preis) laden dagegen auf Faktor 2 hoch und nicht so auf Faktor 1 Bei Faktor 3 findet man evein aumlhnliches Ladungsmuster wie bei Faktor 1 nur deutlich schwaumlcher ausgepraumlgt Faktor 4 und 5weisen kein deutliches Muster auf Auch sind die Faktorladungen vergleichsweise sehr gering

In einem naumlchsten Schritt sind die Werte der Variablen bezuumlglich der Faktoren (Faktorwerte) zuberechnen Diese finden sich unter $rproj Dabei handelt es sich um standardisierte Werte PositiveWerte zeigen dass die entsprechende Variable durch den Faktor uumlberdurchschnittlich beeinflusstwird Negative Werte weisen auf unterdurchschnittliche Einfluumlsse hin Der Wert Null bedeutet dem-nach nur eine durchschnittliche Beeinflussung So wirkt der Faktor 1 uumlberdurchschnittlich bei derBewertung des Streichfettes Rama (Faktorwert 1235) Die staumlrkste unterdurchschnittliche Einwir-kung des Faktors 1 findet man beim Streichfett DuDarfst (Faktorwert -0897)

Mit diesen Ergebnissen liegt zunaumlchst die unrotierte Loumlsung der PCA vor Die mit pca multivberechneten Faktorwerte stimmen nicht mit den Faktorwerten der entsprechenden Berechnung inSPSS (Hauptkomponentenanalyse ohne Rotation) bzw den per Hand berechneten Werten uumlberein

Berechnet man die Faktorwerte an Hand der weiter oben genannten Formel ergibt sich folgendeUumlbersicht

Streichfett Faktor 1 Faktor 2 Faktor 3 Faktor 4 Faktor 5Rama 169765298 -084259522 064919613 010412034 037732804Sanella 013934952 -023597661 -199212500 -031595010 015223698Becel -055481289 004766944 004731854 195025712 -022545166DuDarfst -123383783 -126406530 058680560 -079294480 -027082265Hollaumlndische Butter 034134704 112778100 027630090 -054377661 -155119619Weihnachtsbutter -038969883 116718669 043250381 -040170595 151790547

Die Differenzen zu den Berechnungen mit der Prozedur pca multiv sind nicht zu uumlbersehenOffensichtlich werden die Faktoren mit pca multiv rotiert bevor die Faktorenwerte berechnetwerden Die Art der Rotation konnte allerdings nicht festgestellt werden sie wird auch in derBeschreibung der Prozedur nicht weiter erwaumlhnt Damit nun die Vergleichbarkeit mit den SPSS-Ergebnissen erhalten bleibt sollten die unrotierten Faktorwerte soweit sie uumlberhaupt von Interessesind per Hand ermittelt werden

Seite 14 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 15: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

22 Berechnung der rotierten Loumlsung

Die unrotierte Loumlsung ist wie bereits eingangs skizziert oft schwierig zu interpretieren Dies vorallem deshalb weil die berechneten Faktorladungen keine eindeutige Zuordnung der Variablen zuden Faktoren ergeben Deshalb wird uumlblicherweise eine orthogonale Rotation die VARIMAX-Rotation der Faktoren durchgefuumlhrt um eine sogenannte Einfachstruktur zu finden eine Strukturdie eine eindeutige Zuordnung gestattet Zur Durchfuumlhrung dieser Rotation steht die Prozedur varimax mva zur Verfuumlgung Die librarymva ist wie multiv nur mit aumllteren R-Versionen lauffaumlhig Die Prozedur varimax wurde abermit einigen Erweiterungen in die library stats uumlbernommen

Die Rotation wird uumlblicherweise nicht mit allen Faktoren durchgefuumlhrt Es ist hier eine Auswahl derFaktoren zu treffen auf die das Kaiserkriterium zutrifft oder die insgesamt den groumlszligten Teil dertotalen Varianz erklaumlren In unserem Fall waumlren das die ersten beiden Faktoren

Diese Auswahl wird durch den sogenannten Screeplot (oder auch Scree-Test) unterstuumltzt Hierzusteht die Prozedur screeplot mva zur Verfuumlgung Diese Prozedur unterstuumltzt allerdings nur Objek-te der Klasse princomp als nicht Objekte die mit pca multiv erzeugt wurden Allerdings laumlsstsich die Prozedur einfach dazu benutzen ein Koordinatensystem zu zeichnen in das dann nur nochdie Eigenwerte eingetragen werden

Der folgende Befehl zeichnet ein leeres Koordinatensystem

gtscreeplot(apcatype=c(lines)xlim=c(15)ylim=c(03))

Hierbei sollen die Daten aus dem Objekt apca stammen (Diese Angabe ist nur formal notwendigdamit der Befehl ausgefuumlhrt wird) xlim gibt die Begrenzung der x-Achse hier 1 (1 Faktor) bis 5(5 Faktor) vor ylim begrenzt die y-Achse auf den Wertebereich von 0 bis 3 (Spanne der Eigenwer-te) Die Type-Option gibt an dass der Screeplot als Linie ausgefuumlhrt wird Eine andere Option waumlredie Darstellung der Eigenwerte als Balken (type=c(barplot)

Mit dem lines-Befehl werden nun die Eigenwerte in das Koordinatensysten eingebunden

gt lines(apca$evals)

Seite 15 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 16: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Im Ergebnis erhaumllt man die nachstehende Grafik

Man sieht deutlich dass die Eigenwerte links vom 3 Faktor sehr stark ansteigen Vom 5 Faktor bis3 Faktor ist dieser Anstieg nicht so deutlich hier eher linear Es gibt beim 3 Faktor einen Knick imVerlauf der Linie der als Ellbogen bezeichnet wird Links vom Ellbogen stehen die Faktoren diefuumlr die weitere Rotation ausgewaumlhlt werden sollten (Elbow-Kriterium)

Zur Anwendung von varimax mva ist es notwendig eine neue verkuumlrzte Matrix der Faktorla-dungen der beiden ausgesuchten Faktoren zu erzeugen Dazu speichert man zB in zwei Objektejeweils eine Spalte der unrotierten Faktorladungsmatrix und fasst diese anschlieszligend mit cbind zueiner neuen Matrix zusammen14

gtf1lt-apca$cproj[1]gtf2lt-apca$cproj[2]gtladlt-cbind(f1f2)

gt lad [1] [2][1] -09373203 -02292284[2] -08427593 -01599771[3] -09286194 -02539406[4] -03423812 09358470[5] -02770477 09568039

14 Das kann man natuumlrlich auch in einem Schritt bewerkstelligen Der besseren Nachvollziehbarkeit wegen gehen wirhier aber Schritt fuumlr Schritt vor

Seite 16 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 17: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die VARIMAX-Rotation wird wie folgt durchgefuumlhrt

gt varilt-varimax(lad)

Im Ergebnis erhaumllt man die rotierten Faktorladungen ($loadings) sowie die der Rotation zugrunde-liegende Rotationsmatrix mit den Winkelmaszligen der Rotationswinkel ($rotmat) Diese Ergebnissestimmen bis auf kleinere Differenzen mit den SPSS-Ergebnissen uumlberein

gtvari

gt vari$loadings f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

$rotmat [1] [2][1] 09669103 -02551165[2] 02551165 09669103

Die rotierten Faktorladungen zeigen eine eindeutige Faktorstruktur (Einfachstruktur) Die Variablenfett cal vita sind dem Faktor 1 zuzuordnen Die Variablen halt und preis gehoumlren zum zweitenFaktor Die Eigenwerte der beiden Faktoren haben sich durch die Rotation veraumlndert Man kann siemit folgenden Befehlen als Summe der quadrierten Faktorladungen eines Faktors berechnen

gt sum(vari$loadings[1]^2)[1] 2598838

gt sum(vari$loadings[2]^2)[1] 1980197

Der erste Faktor weist jetzt einen Eigenwert von 2599 und der zweite Faktor von 198 aufDie Summe der Eigenwerte bleibt gegenuumlber der unrotierten Loumlsung unveraumlndert bei 4579 Dererklaumlrte Anteil der totalen Varianz liegt ebenfalls unveraumlndert bei 916

gt sum(vari$loadings[1]^2vari$loadings[2]^2)[1] 4579034

gt sum(vari$loadings[1]^2vari$loadings[2]^2)5[1] 09158069

Seite 17 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 18: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Rotationswinkel erhaumllt man aus $rotmat uumlber die Beziehungen

cos α = 0967 bzw sin α = 0255

Der Rotationswinkel betraumlgt damit 1478 deg (bzw 34522 deg) Die Rotationsrichtung ergibt sich ausden Vorzeichen

Die gefundenen Faktoren der Einfachstruktur kann man mittels der darauf hochladenden Variableninterpretieren (Zumindest kann man es versuchen) Im Beispiel koumlnnte man schlieszligen dass dieVariablen fett cal vita Indikatoren einer gesundheitsbewuszligten Einstellung zu Streichfetten sindDer Faktor 1 waumlre demnach mit dem Schlagwort Gesundheit zu verbinden Die Variablen halt undpreis stehen eher fuumlr wirtschaftliche Aspekte des Streichfettkosums Der zweite Faktor waumlre ev mitdem Schlagwort Wirtschaftlichkeit in Verbindung zu bringen

Aus den rotierten Faktorladungen lassen sich die Kommunalitaumlten berechnen Zur einfacherenHandhabung schreiben wir die Faktorladungen in ein neues Objekt lada

gt ladalt-vari$loadingsgt lada f1 f2[1] -096478465 0017482658[2] -085568548 0060318360[3] -096267611 -0008631616[4] -009230188 0992227239[5] -002378375 0995823002

Anschlieszligend quadrieren wir die Faktorladungen und bilden die Summe

gt lada1lt-lada[1]^2gt lada1[1] 09308094278 07321976384 09267452839 00085196377 00005656666gt lada2lt-lada[2]^2gt lada2[1] 00003056433 00036383046 00000745048 09845148947 09916634514

gt kommult-lada1+lada2gt kommu[1] 09311151 07358359 09268198 09930345 09922291

Insgesamt kann ein recht hoher Anteil der Varianzen der Variablen erklaumlrt werden Bis auf diezweite Variable cal (0736) liegen die Anteile uumlber 90 Die Varianzen der Variablen halt und preiswerden fast vollstaumlndig erfasst

Seite 18 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 19: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Auf der Grundlage der rotierten Faktorladungen koumlnnen abschlieszligend die Faktorwerte leider nurper Hand berechnet werden Dazu verwendet man die bereits og Formel

F = ZmiddotA middot (AT middotA)-1 A Faktorladungen der rotiertenFaktoren

F Faktorwerte nach der Rotation

Ausgangspunkt sind die rotierten Faktorladungen aus Oblekt lada Die erste Spalte von lada wirdmit -1 multiplizert Danach erzeugen wir eine neue Matrix ladb mit der die Faktorwerte berechnetwerden

gt f3lt--1lada[1]gt ladblt-cbind(f3lada[2])

gt ladb f3 [1] 096478465 0017482658[2] 085568548 0060318360[3] 096267611 -0008631616[4] 009230188 0992227239[5] 002378375 0995823002

Schrittweise koumlnnen nun die Faktorwerte berechnet werden (natuumlrlich geht das auch in einemSchritt)

gt ladbtlt-t(ladb) Berechnung der transponierten Faktorladungsmatrixgt ladbplt-ladbtladb Berechnung der Varianz-Kovarianzmatrix15 gt ladbilt-solve(ladbp) Inverse Matrix der Varianz-Kovarianzmatrixgt fakwertlt-zladbladbi Berechnung der Faktorwerte

Im Ergebnis erhaumllt man die folgenden Werte

gt fakwert [1] [2] [1] -142651819 -12478134 [2] -007453696 -02637186 [3] 052429304 01876340 [4] 151549456 -09074654 [5] -061776760 10033798 [6] 007903515 12279835

Die Werte weichen geringfuumlgig von den SPSS-Ergebnissen ab

15 In der Diagonale der Matrix stehen wenn alle Faktoren einbezogen werden die Eigenwerte der Faktoren

Seite 19 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 20: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die berechnete Faktorstruktur laumlsst sich grafisch darstellen Mit Hilfe der Prozedur biplot mvaerhaumllt man eine Grafik die die Faktorwerte der Untersuchungsobjekte und gleichzeitig die Faktor-ladungen der Variablen in Bezug zu den ersten beiden Faktoren darstellt16

gt biplot(apca$rprojapca$cproj)

Die Grafik zeigt die mit pca multivgefundene Faktorstruktur Die Faktoren denke man sich alsLinien durch den jeweiligen Nullpunkt in der Gafik Die Variablen 1 2 3 liegen dicht beieinanderund wirken in die gleiche Richtung dh sie laden demnach aumlhnlich stark auf einen gemeinsamenFaktor Die Variablen 5 6 laden dementsprechend hoch auf einen zweiten Faktor Die Faktorwerteergeben keine so eindeutige Lage der Untersuchungsobjekte (Streichfette) zu den Faktoren

Die dargestellte Faktorstruktur ist nicht wie bereits weiter oben dargestellt identisch mit derVARIMAX-rotierten Loumlsung Die rotierte Loumlsung kann man leicht mit zwei Grafiken sichtbarmachen Diese sind mit dem plot-Befehl zu erzeugen Die Faktorwerte (Faktorwerteplot) koumlnnen mit folgenden Befehlen grafisch dargestellt werden

gt plot(fakwert[1]fakwert[2]type=n)gt points(fakwert[1]fakwert[2]col=bluepch=c(123456))gt abline(v=0h=0)

Mit dem plot-Befehl wird zunaumlchst ein passendes Koordinatensystem ohne sichtbare Darstellungder Untersuchungsobjekte (type=n) die sich im Schnittpunkt jeweils zweier Koordinaten(Fak-torwerte) befinden erstellt Anschlieszligend werden die nicht sichtbaren Objekte mit dem Befehl

16 SPSS (bis Version 115) stellt beides getrennt in einem Faktorwerteplot und einem Komponentendiagramm dar

Seite 20 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 21: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

points sichtbar gemacht Die Option pch (print charakter) steuert die Darstellung der Koordinaten-schnittpunkte Uumlblicherweise sind das Punkte kleine Kreise etc In unserem Fall sollen die Namenbzw Nummern der Streichfette zur besseren Interpretation der Grafik dargestellt werden Dazu wirdeine Liste mit Namen vorgegeben (c(123456)) Die Reihenfolge muss die gleichesein wie die der Objekte in der Datenmatrix Weiterhin werden die Nummern noch blau eingefaumlrbt(col=blue) Mit dem Befehl abline werden die mittleren Faktorwerte (= Wert 0) eingezeichnetDas Ergebnis sieht wie folgt aus

Seite 21 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 22: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorladungen (Faktorladungsplot) koumlnnen in der selben Weise sichtbar gemacht werden

gt plot(ladb[1]ladb[2]type=nxlim=c(-11)ylim=c(-11))gt points(ladb[1]ladb[2]col=redpch=c(12345))gt abline(h=0v=0)

Der Vergleich des Biplots mit den eben dargestellten Grafiken zeigt im Wesentlichen Uumlberein-stimmungen Dies ist nur dem einfach strukturierten Beispiel zu verdanken Bei anderen Datenergeben sich uU deutliche Unterschiede Deshalb sollte der hier aufgezeigte Weg genutzt werden

Seite 22 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 23: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

23 Eignung der Ausgangsdaten fuumlr eine PCA

Fuumlr das Uumlbungsbeispiel konnte offensichtlich eine aussagekraumlftige gut interpretierbare Einfach-struktur gefunden werden Man koumlnnte also die Bewertung der sechs Streichfette auch an Hand derzwei extrahierten Faktoren Gesundheit und Wirtschaftlichkeit ohne allzugroszlige Informationsver-luste vornehmen Dies ist ein Idealfall Nicht immer wird das am empirischen Datenmaterial sogelingen Die Ursache liegt haumlufig darin dass das vorliegende Datenmaterial mehr oder wenigergeeignet ist fuumlr eine Faktorenanalyse Je nachdem wird es also auch mehr oder weniger gelingen dieAusgangsdaten auf wenige unabhaumlngige Faktoren zu reduzieren die auch noch plausibel interpre-tiert werden koumlnnen

Ausgangspunkt fuumlr die Extraktion von Faktoren ist die Korrelations- bzw Kovarianzmatrix Inwie-weit die Datenmatrix geeignet ist fuumlr eine Faktorenanlyse wird an Hand dieser Matrix uumlberpruumlftDazu koumlnnen eine Reihe von Kriterien herangezogen werden In SPSS werden hierfuumlr angeboten dieInverse der Korrelationsmatrix die Anti-Image-Matrizen der Bartlett- Sphaumlrentest (Bartlett-Testauf Sphaumlrizitaumlt) und die Berechnung des KMO- Kriteriums (Kaiser-Meyer-Olkin-Kriterium)17Daruumlberhinaus gibt die Signifikanz der Korrelationskoeffizienten einen ersten Aufschluss uumlber dieEignung der Daten Hier soll nur kurz auf die Signifikanz der Korrelationskoeffizienten die Inverseder Korrelationsmatrix und den Bartlett-Test auf Sphaumlrizitaumlt eingegangen werden18

Die Korrelationsmatrix wird mit dem Befehl cor (amat) erzeugt (siehe oben) Fuumlr jeweils 2Variablen kann die Signifikanz des Korrelationskoeffizienten mit dem Befehl cortest ctestuumlberpruumlft werden

gt corlt-cor(amat)gt cor [1] [2] [3] [4] [5][1] 10000000 071176059 096134064 010894096 004385290[2] 07117606 100000000 070397104 013770743 006651901[3] 09613406 070397104 100000000 007824608 002362278[4] 01089410 013770743 007824608 100000000 098334342[5] 00438529 006651901 002362278 098334342 100000000

Wir wollen nur exemplarisch 3 Korrealtionskoeffizienten (fett+cal fett+vita cal+vita) uumlberpruumlfenZunaumlchst betrachten wir die Variablen fett und cal mit einem Korrelationskoeffizienten von etwar = 0712

gt cortest(~amat[1]+amat[2])

Pearsons product-moment correlation

data amat[ 1] and amat[ 2] t = 20266 df = 4 p-value = 01126alternative hypothesis true correlation is not equal to 0 95 percent confidence interval

17 Berechnet wird eigentlich die Kennziffer MSA (Measure of Sampling Adequacy)18 Fuumlr die Berechnung der anderen Kriterien benoumltigt man partielle Korrelationskoeffizienten houmlherer Ordnung Fuumlr

diese Berechnung konnte der Autor noch keine plausible Prozedur oauml in R finden

Seite 23 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 24: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

-02362915 09655716 sample estimates cor 07117606

Der Korrelationskoeffizient ist demnach nicht signifikant Die Variablen fett und vita weisen einenKorrealtionskoeffizienten von r = 0961 auf Der Signifikanztest bringt folgendes Ergebnis

gt cortest(~amat[1]+amat[3])

Pearsons product-moment correlation

data amat[ 1] and amat[ 3] t = 69824 df = 4 p-value = 0002213alternative hypothesis true correlation is not equal to 0 95 percent confidence interval 06813940 09959078 sample estimates cor 09613406

Dieser Korrelationskoeffizient ist hoch signifikant

Fuumlr den Korrelationskoeffizienten zwischen den Variablen cal und vita berechnet sich folgendesTestergebnis

gt cortest(~amat[2]+amat[3])

Pearsons product-moment correlation

data amat[ 2] and amat[ 3] t = 19824 df = 4 p-value = 01185alternative hypothesis true correlation is not equal to 0 95 percent confidence interval -02509778 09644990 sample estimates cor 0703971

Der Korrelationskoeffizient ist wiederum nicht signifikant

Die Testergebnisse weisen auf eine problematische Datensituation hin19 Alle drei Variablen ladenschlieszliglich als Ergebnis der PCA hoch auf den ersten Faktor Gesundheit Dh sie muumlsstenmiteinander idealerweise stark und signifikant korrelieren Da sie dies nicht tun kann man davon

19 Die Eignung der Ausgangsdaten wird nur formal an Hand einiger Kriterien eingeschaumltzt Dh aber nicht dass beiformaler Ungeeignetheit der Daten die PCA keine brauchbaren Ergebnisse bringen kann Wie das Beispiel zeigtsind in diesem Fall durchaus plausible Faktorstrukturen auffindbar Bei der Einschaumltzung muumlssen deshalb auchinhaltliche Uumlberlegungen eine Rolle spielen Daruumlberhinaus lieszlige sich ja uU beispielsweise Signifikanz der Korre-lationskoeffizienten durch eine Vergroumlszligerung der Datenbasis herbeifuumlhren

Seite 24 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 25: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

ausgehen dass die Daten unseres Beispiels mit einiger Wahrscheinlichkeit nicht besonders gutgeeignet sind fuumlr die Extraktion einer Faktorstruktur Die Ursache ist offensichtlich die Variablecal Im Ergebnis der PCA konnte man ja auch feststellen dass die Kommunalitaumlt der Variable calmit 0736 im Vergleich aller Variablen sehr niedrig ist

Relativ einfach laumlsst sich die Eignung der Ausgangsdaten auch an Hand der Inverse der Korrela-tionsmatrix einschaumltzen Die Inverse muumlsste bei vollstaumlndiger Eignung der Daten eine Diagonalma-trix ergeben20 Dh die nichtdiagonalen Elemente muumlssten den Wert 0 annehmen Die Inverse einerMatrix laumlsst sich ohne Schwierigkeiten mit dem Befehl solve erzeugen

gt solve(cor)

[1] [2] [3] [4] [5][1] 144991048 -06067838 -131977152 -5580180 5203535[2] -06067838 21794434 -08286326 -2180659 2045546[3] -131977152 -08286326 140000000 4792572 -4409586[4] -55801801 -21806591 47925724 38178711 -37266236[5] 52035350 20455462 -44095855 -37266236 37385417

Das Ergebnis ist eine Matrix die weit entfernt davon ist eine Diagonalmatrix zu sein Die ogAussage dass die Ausgangsdaten nicht besonders gut fuumlr eine PCA geeignet sind wird hierbestaumltigt

Der Bartlett- Test auf Sphaumlrizitaumlt testet die H0 ob die Daten aus einer unkorrelierten Grundge-samtheit stammen Traumlfe die H0 zu waumlren die Daten ungeeignet fuumlr eine FaktoranalyseDieser Test wird in R soweit der Autor sehen kann nicht angeboten Er laumlsst sich aber recht einfachper Hand durchfuumlhren21

Die Pruumlfgroumlszlige Uo wird wie folgt berechnet

Uo = - ( N-1- (2p+5)6) ln|R|

mit p Anzahl der VariablenN Stichprobenumfang|R| Determinante der Korrelationsmatrix

Die Testgroumlszlige folgt annaumlhernd einer Chi-Quadrat-Verteilung Die entsprechenden Freiheitsgradewerden mit do bezeichnet und berechnen sich wie folgt

do = ppminus1

2

20 siehe dazu Backhaus et al 321 siehe Fahrmeir et al 2

Seite 25 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 26: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Testentscheidung lautet dann

Die H0 wird abgelehnt falls Uo gt Xdo 1minusα2

In unserem Beispiel sind N = 6 und p = 5 Die Pruumlfgroumlszlige berechnet man wie folgt

gt ult--(6-1-(25+5)6)log(det(cor(amat)))gt u[1] 1737078

Die Freiheitsgrade und die Testgroumlszlige erhaumllt man mit folgenden Berechnungen

gt dlt-(5(5-1))2gt d[1] 10

gt qchisq(09510)[1] 1830704

Fuumlr α = 005 und DF = 10 hat der entsprechende Quantilswert der Chi-Quadrat-Verteilung den Wert1830704 Damit ist die Pruumlfgroumlszlige mit 1737078 kleiner Die H0 kann nicht verworfen werden

Man kann aber auch einfacher den zur Pruumlfgroumlszlige gehoumlrenden α - Wert bestimmen

gtalphalt-pchisq(udlowertail=FALSE)gt alpha[1] 006655165

Die Option lowertail=FALSE erzwingt die Ausgabe des α - Wertes der Pruumlfgroumlszlige Die Optionlowertail=TRUE berechnet den entsprechenden 1 - α -Wert

Der α - Wert ist groumlszliger als 005 damit kann die H0 nicht verworfen werden Die Ausgangsdatenstammen demnach wenn auch gerade so aus einer Grundgesamt die nicht korreliert ist Der Testbestaumltigt wieder die Aussage dass die Daten recht ungeeignet fuumlr eine PCA sind

Seite 26 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 27: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

24 Bewertung der rotierten Loumlsung

Das Fundamentaltheorem der Faktorenanalyse geht davon aus dass die Varianz der Ausgangsdatendurch die Faktoren vollstaumlndig reproduziert werden kann Inwieweit dies gelungen ist laumlsst sichuumlberpruumlfen in dem aus den Berechnungsergebnissen die Korrelationsmatrix reproduziert wird Dieserfolgt mit den rotierten Faktorladungen uumlber die Formel

R = A AT

Fuumlr das Beispiel erhaumllt man diese Ergebnisse

gt reprolt-ladaladatgt repro [1] [2] [3] [4] [5] [1] 093111507 082660674 092862423 01063982 004035583 [2] 082660674 073583594 082322732 01388309 008041782 [3] 092862423 082322732 092681979 00802923 001430048 [4] 010639821 013883090 008029229 09930345 099027799 [5] 004035583 008041782 001430048 09902780 099222912

In der Hauptdiagonale der Matrix stehen die reproduzierten Kommunalitaumlten Diese stimmen mitden weiter oben berechneten Werten uumlberein Die anderen Elemente enthalten die reproduziertenKorrelationskoeffizienten

Zur einfacheren Beurteilung des Ergebnisses lassen sich die Residuen dh die Differenzen zu denKorrelationskoeffizienten der Ausgangsdaten berechnen

gt residlt-cor-repro

gt resid [1] [2] [3] [4] [5] [1] 0068884929 -0114846158 0032716410 0002542746 0003497074 [2] -0114846158 0264164057 -0119256282 -0001123467 -0013898807 [3] 0032716410 -0119256282 0073180211 -0002046213 0009322297 [4] 0002542746 -0001123467 -0002046213 0006965468 -0006934571 [5] 0003497074 -0013898807 0009322297 -0006934571 0007770882

Es ist ersichtlich dass die urspruumlngliche Korrelationsmatrix recht gut reproduziert werden kann Diegroumlszligten Residuen ergeben sich bei den Korrelationskoeffizienten im Zusammenhang mit derVariable cal Hier finden moumlglicherweise die weiter oben bereits analysierten nicht signifikantenKorrelationen ihren Niederschlag

Seite 27 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 28: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

3 Die Prozedur prcomp stats

Die Prozedur prcomp stats ist unter dem R - Release 211 lauffaumlhig Mit Hilfe dieser Prozedurkoumlnnen PCA in der gleichen Weise wie mit pca multiv gerechnet werden Allerdings kann derAnwender jetzt nicht mehr zwischen acht verschiedenen Berechnungsmethoden waumlhlen Es wirdstandardmaumlszligig die Korrelationsmatrix zur Berechnung der PCA verwendet (Methode 3 bei pcamultiv)

Die Berechnungsergebnisse stimmen bis ins Detail mit den Ergebnissen der Prozedur pca multivuumlberein Deshalb soll im Weiteren die Berechnung einer PCA mit prcomp nur skizziert werdenUnterschiede fuumlr den Anwender gibt es allerdings bei der Darstellung der Berechnungsergebnisse22Angenehm faumlllt hierbei die teilweise verbesserte Form der Ergebnisdarstellung ins Auge (zB beider Anwendung des print-Befehls)

Die PCA wird wie folgt aufgerufen

gt bfaclt-prcomp(bmatretx=TRUEcenter=TRUEscale=TRUE)

Wir verwenden das gleiche Beispiel wie oben Zur Unterscheidung stehen die Daten im Objektbmat Das Ergebnis wird unter bfac gespeichert Die Optionen center und scale steuern dieZentrierung und Standardisierung der Ausgangsdaten Damit wird zur Berechnung der PCA dieKorrelationsmatrix verwendet Sind diese auf FALSE gesetzt kommt die Kovarianzmatrix zurAnwendung Die Option retx=TRUE berechnet die Werte der rotierten Daten (rotated data)23

Das standardmaumlszligig angezeigte Ergebnis sieht wie folgt aus

gt bfacStandard deviations[1] 16263847 13906500 06072167 01982373 01138211 Eigenwert12

Rotation Eigenvektoren

PC1 PC2 PC3 PC4 PC5[1] 05763214 -01648354 0366606521 -069627222 -014658628[2] 05181796 -01150376 -0846379811 001877651 -003930542[3] 05709716 -01826057 0383561508 068999723 013202659[4] 02105168 06729565 0002153903 -013066012 069694727[5] 01703457 06880264 0046008759 014725553 -068833207

Ausgewiesen werden Standardabweichungen die aus den Eigenwerten berechnet werden(Standardabweichung = Eigenwert12 ) Unter Rotation finden sich die Eigenvektoren der Korrela-tionsmatrix (entsprechen den Werten $evecs bei pca multiv) Die Eigenvektoren des erstenFaktors werden hier gleich mit dem richtigen Vorzeichen aufgefuumlhrt so dass bei den weiterenBerechnungen eine Vorzeichenkorrektur nicht mehr notwendig ist

22 Inhaltliche Unterschiede bestehen beim Berechnungsalgorithmus Die Prozedur verwendet nicht den Befehl eigenbase zur Bestimmung der Eigenvektoren und - werte sondern berechnet eine Single Value Decomposition derMatrix mit svd base Dies fuumlhrt zu numerisch exakteren Ergebnissen

23 Was diese inhaltlich darstellen ist dem Autor bisher unklar Es handelt sich hier nicht um die Faktorwerte

Seite 28 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 29: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die og Werte der rotierten Daten lassen sich folgendermaszligen abrufen

gt bfac$x

PC1 PC2 PC3 PC4 PC5[1] -27610367 -117175510 039420267 -002064070 004294809[2] -02266359 -032816091 -120965164 006263311 001732781[3] 09023392 006629155 002873263 -038661394 -002566122[4] 20066950 -175787248 035631825 015719143 -003082544[5] -05551616 156834871 016777451 010779688 -017655937[6] 06338001 162314823 026262357 007963322 017277014

Prcomp stats uumlberlaumlsst die Berechnung der Faktorladungen der unrotierten Loumlsung dem Anwen-der Das ist natuumlrlich nicht weiter schwierig aber eigentlich unverstaumlndlich Schlieszliglich werden dieFaktorladungen fuumlr die weiteren Berechnungen benoumltigt

Die Faktorladungen erhaumllt man durch Multiplikation der Eigenvektoren mit der Diagonalmatrix derausgewiesenen Standardabweichungen

gt bladlt-bfac$rotationdiag(bfac$sdev)

Der Vergleich zeigt dass man exakt die gleichen Faktorladungen erhaumllt wie mit pca multiv

gt blad

[1] [2] [3] [4] [5][1] 09373204 -02292284 0222609597 -0138027093 -0016684614[2] 08427593 -01599771 -0513935944 0003722204 -0004473787[3] 09286194 -02539406 0232904948 0136783158 0015027414[4] 03423812 09358470 0001307886 -0025901704 0079327314[5] 02770477 09568039 0027937286 0029191532 -0078346722

Zur Durchfuumlhrung der VARIMAX - Rotation erzeugen wir eine Matrix mit den Faktorladungen derausgewaumlhlten Faktoren Zur Auswahl stehen hier natuumlrlich wieder die ersten beiden extrahiertenFaktoren Durch Quadrierung der Standardabweichungen berechnet man die Eigenwerte derFaktoren die mit den bekannten Eigenwerten aus pca multiv identisch sind Die Auswahl istdemnach auch in gleicher Weise durchzufuumlhrenDie neue Matrix ladb kann direkt aus der Faktorladungsmatrix zusammengestellt werden

gt ladblt-cbind(blad[1]blad[2])gt ladb [1] [2][1] 09373204 -02292284[2] 08427593 -01599771[3] 09286194 -02539406[4] 03423812 09358470[5] 02770477 09568039

Seite 29 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 30: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Mit der Prozedur varimax stats erfolgt die Berechnung der rotierten Faktorladungen

gt variblt-varimax(ladb)

Im Ergebnis erhaumllt man die folgende Uumlbersicht

gt varib$loadings

Loadings [1] [2] [1] 0965 [2] 0856 [3] 0963 [4] 0992[5] 0996

[1] [2]SS loadings 2599 1980Proportion Var 0520 0396Cumulative Var 0520 0916

$rotmat [1] [2][1] 09669103 02551165[2] -02551165 09669103

Es werden die rotierten Faktorladungen so ausgewiesen dass die Einfachstruktur sofort sichtbarwird Die hierzu nicht benoumltigten Faktorladungen wurden aber dennoch berechnet wie man sichleicht uumlberzeugen kann

gt varib$loadings[1][1] 096478468 085568550 096267613 009230189 002378375gt varib$loadings[2][1] 0017482659 0060318363 -0008631615 0992227257 0995823020

Daruumlberhinaus werden die neuen Eigenwerte (SSloadings) sowie der erklaumlrte Anteil der totalenVarianz aufgefuumlhrt Das ist eine Verbesserung gegenuumlber pca multiv wo man diese Werte erstberechnen musste Weiterhin wird die Rotationsmatrix ausgegeben

Aus den rotierten Faktorladungen koumlnnen wiederum die Kommunalitaumlten bestimmt werden

gt kommult-varib$loadings[1]^2+varib$loadings[2]^2

gt kommu

[1] 09311151 07358360 09268198 09930346 09922292

Seite 30 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 31: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Die Faktorwerte der rotierten Loumlsung berechnet man wie oben bereits ausgefuumlhrt Zur besserenHandhabung erzeugen wir eine neue Matrix mit den rotierten Faktorladungen

gt ladb1lt-cbind(varib$loadings[1]varib$loadings[2])

gt ladb1 [1] [2][1] 096478468 0017482659[2] 085568550 0060318363[3] 096267613 -0008631615[4] 009230189 0992227257[5] 002378375 0995823020

Mit folgender Befehlssequenz errechnen sich die Faktorwerte

gt ladb1tlt-t(ladb1)gt ladb1plt-ladb1tladb1gt ladb1ilt-solve(ladb1p)gt fakwertlt-zladb1ladb1i

gt fakwert [1] [2][1] -142651816 -12478134[2] -007453696 -02637186[3] 052429303 01876340[4] 151549453 -09074653[5] -061776759 10033798[6] 007903515 12279835

Man erhaumllt wie der Vergleich zeigt das gleiche Ergebnis wie mit pca multiv

Seite 31 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 32: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

Abschlieszligend kann die prcomp- Loumlsung mit dem Befehl biplot stats dargestellt werden Dierotierte Loumlsung ist dann wieder bei Bedarf mit dem plot-Befehl gesondert sichtbar zu machen

gt biplot(bfac)

Seite 32 von 33

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33

Page 33: Faktorenanalyse (Hauptkomponentenmethode, PCA) · MWS Dr. H. Grunert Scriptenreihe zur Angewandten Statistik 2005 Faktorenanalyse (Hauptkomponentenmethode, PCA) Ein kurzer Leitfaden

MWS Dr H Grunert Scriptenreihe zur Angewandten Statistik 2005

4 Literatur und Quellen

1 R Development Core Team (2005) R A language and environment for statistical computing R Foundation for Statistical Computing

Vienna Austria ISBN 3-900051-07-0 URL httpwwwR-projectorg

2 Fahrmeir L Multivariate statistische Verfahren 2erw AuflageHamerle A Berlin New York Walter de Gruyter 1996Tutz G

3 Backhaus K Multivariate Analysemethoden Erichson B Eine anwendungsorientierte EinfuumlhrungPlinke W 10 neu bearbeitete und erweiterte AuflageWeiber R Springer Verlag Berlin Heidelberg New York 2003

4 Bortz J Statistik fuumlr Sozialwissenschaftler5 vollstaumlndig uumlberarbeitete und aktualisierte AuflageSpringer Verlag Berlin Heidelberg New York 1999

Seite 33 von 33