Post on 17-Sep-2018
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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