Principal Components Analysis with SPSS Karl L. Wuensch Dept of Psychology
Transcription
Principal Components Analysis with SPSS Karl L. Wuensch Dept of Psychology
Principal Components Analysis with SPSS Karl L. Wuensch Dept of Psychology East Carolina University When to Use PCA • You have a set of p continuous variables. • You want to repackage their variance into m components. • You will usually want m to be < p, but not always. Components and Variables • Each component is a weighted linear combination of the variables Ci Wi 1 X1 Wi 2 X 2 Wip X p • Each variable is a weighted linear combination of the components. X j A1 j C1 A2 j C2 Amj Cm Factors and Variables • In Factor Analysis, we exclude from the solution any variance that is unique, not shared by the variables. X j A1 j F1 A2 j F2 Amj Fm U j • Uj is the unique variance for Xj Goals of PCA and FA • Data reduction. • Discover and summarize pattern of intercorrelations among variables. • Test theory about the latent variables underlying a set a measurement variables. • Construct a test instrument. • There are many others uses of PCA and FA. Data Reduction • Ossenkopp and Mazmanian (Physiology and Behavior, 34: 935-941). • 19 behavioral and physiological variables. • A single criterion variable, physiological response to four hours of cold-restraint • Extracted five factors. • Used multiple regression to develop a model for predicting the criterion from the five factors. Exploratory Factor Analysis • Want to discover the pattern of intercorrleations among variables. • Wilt et al., 2005 (thesis). • Variables are items on the SOIS at ECU. • Found two factors, one evaluative, one on difficulty of course. • Compared FTF students to DE students, on structure and means. Confirmatory Factor Analysis • Have a theory regarding the factor structure for a set of variables. • Want to confirm that the theory describes the observed intercorrelations well. • Thurstone: Intelligence consists of seven independent factors rather than one global factor. • Often done with SEM software Construct A Test Instrument • Write a large set of items designed to test the constructs of interest. • Administer the survey to a sample of persons from the target population. • Use FA to help select those items that will be used to measure each of the constructs of interest. • Use Cronbach alpha to check reliability of resulting scales. An Unusual Use of PCA • Poulson, Braithwaite, Brondino, and Wuensch (1997, Journal of Social Behavior and Personality, 12, 743-758). • Simulated jury trial, seemingly insane defendant killed a man. • Criterion variable = recommended verdict – Guilty – Guilty But Mentally Ill – Not Guilty By Reason of Insanity. • Predictor variables = jurors’ scores on 8 scales. • Discriminant function analysis. • Problem with multicollinearity. • Used PCA to extract eight orthogonal components. • Predicted recommended verdict from these 8 components. • Transformed results back to the original scales. A Simple, Contrived Example • Consumers rate importance of seven characteristics of beer. – low Cost – high Size of bottle – high Alcohol content – Reputation of brand – Color – Aroma – Taste • FACTBEER.SAV at http://core.ecu.edu/psyc/wuenschk/SPSS/ SPSS-Data.htm . • Analyze, Data Reduction, Factor. • Scoot beer variables into box. • Click Descriptives and then check Initial Solution, Coefficients, KMO and Bartlett’s Test of Sphericity, and Anti-image. Click Continue. • Click Extraction and then select Principal Components, Correlation Matrix, Unrotated Factor Solution, Scree Plot, and Eigenvalues Over 1. Click Continue. • Click Rotation. Select Varimax and Rotated Solution. Click Continue. • Click Options. Select Exclude Cases Listwise and Sorted By Size. Click Continue. • Click OK, and SPSS completes the Principal Components Analysis. Checking for Unique Variables 1 • Check the correlation matrix. • If there are any variables not well correlated with some others, might as well delete them. Checking for Unique Variables 2 Correlation Matrix cost size alcohol reputat color aroma taste cost size alcohol reputat color aroma taste 1.00 .832 .767 -.406 .018 -.046 -.064 .832 1.00 .904 -.392 .179 .098 .026 .767 .904 1.00 -.463 .072 .044 .012 -.046 .098 .044 -.443 .909 1.00 .870 -.406 -.392 -.463 1.00 -.372 -.443 -.443 .018 .179 .072 -.372 1.00 .909 .903 -.064 .026 .012 -.443 .903 .870 1.00 Checking for Unique Variables 3 • Bartlett’s test of sphericity tests null that the matrix is an identity matrix, but does not help identify individual variables that are not well correlated with others. KMO and Bartlett's Test Kaiser-Meyer-Olkin Measure of Sampling Adequacy. Bartlett's Test of Sphericity Approx. Chi-Square df Sig. .665 1637.9 21 .000 Checking for Unique Variables 4 • For each variable, check R2 between it and the remaining variables. • SPSS reports these as the initial communalities when you do a principal axis factor analysis • Delete any variable with a low R2 . Checking for Unique Correlations • Look at partial correlations – pairs of variables with large partial correlations share variance with one another but not with the remaining variables – this is problematic. • Kaiser’s MSA will tell you, for each variable, how much of this problem exists. • The smaller the MSA, the greater the problem. Checking for Unique Correlations 2 • An MSA of .9 is marvelous, .5 miserable. • Variables with small MSAs should be deleted • Or additional variables added that will share variance with the troublesome variables. Checking for Unique Correlations 3 Anti-image Matrices cost Anti-image Correlation size alcohol reputat color aroma taste cost .779a -.543 .105 .256 .100 .135 -.105 size -.543 .550a -.806 -.109 -.495 .061 .435 .105 -.806 .630a .226 .381 -.060 -.310 .256 -.109 .226 .763a -.231 .287 .257 color .100 -.495 .381 -.231 .590a -.574 -.693 aroma .135 .061 -.060 .287 -.574 .801a -.087 -.105 .435 -.310 .257 -.693 -.087 .676a alcohol reputat taste a. Measures of Sampling Adequacy (MSA) on main diagonal. Off diagonal are partial correlations x -1. Extracting Principal Components 1 • From p variables we can extract p components. • Each of p eigenvalues represents the amount of standardized variance that has been captured by one component. • The first component accounts for the largest possible amount of variance. • The second captures as much as possible of what is left over, and so on. • Each is orthogonal to the others. Extracting Principal Components 2 • Each variable has standardized variance = 1. • The total standardized variance in the p variables = p. • The sum of the m = p eigenvalues = p. • All of the variance is extracted. • For each component, the proportion of variance extracted = eigenvalue / p. Extracting Principal Components 3 • For our beer data, here are the eigenvalues and proportions of variance for the seven components: Component 1 2 3 4 5 6 7 Total 3.313 2.616 .575 .240 .134 9.E-02 4.E-02 Initial Eigenvalues % of Cumulative Variance % 47.327 47.327 37.369 84.696 8.209 92.905 3.427 96.332 1.921 98.252 1.221 99.473 .527 100.000 Extraction Method: Principal Component Analysis. How Many Components to Retain • From p variables we can extract p components. • We probably want fewer than p. • Simple rule: Keep as many as have eigenvalues 1. • A component with eigenvalue < 1 captured less than one variable’s worth of variance. • Visual Aid: Use a Scree Plot • Scree is rubble at base of cliff. • For our beer data, Scree Plot 3.5 3.0 2.5 2.0 1.5 Eigenvalue 1.0 .5 0.0 1 2 Component Number 3 4 5 6 7 • Only the first two components have eigenvalues greater than 1. • Big drop in eigenvalue between component 2 and component 3. • Components 3-7 are scree. • Try a 2 component solution. • Should also look at solution with one fewer and with one more component. Less Subjective Methods • Parallel Analysis and Velcier’s MAP test. • SAS, SPSS, Matlab scripts available at https://people.ok.ubc.ca/brioconn/nfactors/ nfactors.html Parallel Analysis • How many components account for more variance than do components derived from random data? • Create 1,000 or more sets of random data. • Each with same number of cases and variables as your data set. • For each set, find the eigenvalues. • For the eigenvalues from the random sets, find the 95th percentile for each component. • Retain as many components for which the eigenvalue from your data exceeds the 95th percentile from the random data sets. Random Data Eigenvalues Root Prcntyle 1.000000 1.344920 2.000000 1.207526 3.000000 1.118462 4.000000 1.038794 5.000000 .973311 6.000000 .907173 7.000000 .830506 • Our data yielded eigenvalues of 3.313, 2.616, and 0.575. • Retain two components Velicer’s MAP Test • Step by step, extract increasing numbers of components. • At each step, determine how much common variance is left in the residuals. • Retain all steps up to and including that producing the smallest residual common variance. Velicer's Minimum Average Partial (MAP) Test: Velicer's Average Squared Correlations .000000 .266624 1.000000 .440869 2.000000 .129252 3.000000 .170272 4.000000 .331686 5.000000 .486046 6.000000 1.000000 The smallest average squared correlation is .129252 The number of components is 2 Which Test to Use? • Parallel analysis tends to overextract. • MAP tends to underextract. • If they disagree, increase number of random sets in the parallel analysis • And inspect carefully the two smallest values from the MAP test. • May need apply the meaningfulness criterion. Loadings, Unrotated and Rotated • loading matrix = factor pattern matrix = component matrix. • Each loading is the Pearson r between one variable and one component. • Since the components are orthogonal, each loading is also a β weight from predicting X from the components. • Here are the unrotated loadings for our 2 component solution: Component Matrixa COLOR AROMA REPUTAT TASTE COST ALCOHOL SIZE Component 1 2 .760 -.576 .736 -.614 -.735 -.071 .710 -.646 .550 .734 .632 .699 .667 .675 Extraction Method: Principal Component Analysis. a. 2 components extracted. • All variables load well on first component, economy and quality vs. reputation. • Second component is more interesting, economy versus quality. • Rotate these axes so that the two dimensions pass more nearly through the two major clusters (COST, SIZE, ALCH and COLOR, AROMA, TASTE). • The number of degrees by which I rotate the axes is the angle PSI. For these data, rotating the axes -40.63 degrees has the desired effect. • Component 1 = Quality versus reputation. • Component 2 = Economy (or cheap drunk) versus reputation. a Rotate d Com ponent Matrix TASTE AROMA COLOR SIZE ALCOHOL COST REPUTAT Component 1 2 .960 -.028 .958 1.E-02 .952 6.E-02 7.E-02 .947 2.E-02 .942 -.061 .916 -.512 -.533 Ex trac tion Met hod: Principal Component A naly sis. Rotation Method: V arimax with Kaiser Normalization. a. Rotation converged in 3 iterations. Number of Components in the Rotated Solution • Try extracting one fewer component, try one more component. • Which produces the more sensible solution? • Error = difference in obtained structure and true structure. • Overextraction (too many components) produces less error than underextraction. • If there is only one true factor and no unique variables, can get “factor splitting.” • In this case, first unrotated factor true factor. • But rotation splits the factor, producing an imaginary second factor and corrupting the first. • Can avoid this problem by including a garbage variable that will be removed prior to the final solution. Explained Variance • Square the loadings and then sum them across variables. • Get, for each component, the amount of variance explained. • Prior to rotation, these are eigenvalues. • Here are the SSL for our data, after rotation: Total Variance Explained Component 1 2 Rotation Sums of Squared Loadings % of Cumulative Total Variance % 3.017 43.101 43.101 2.912 41.595 84.696 Extraction Method: Principal Component Analysis. • After rotation the two components together account for (3.02 + 2.91) / 7 = 85% of the total variance. • If the last component has a small SSL, one should consider dropping it. • If SSL = 1, the component has extracted one variable’s worth of variance. • If only one variable loads well on a component, the component is not well defined. • If only two load well, it may be reliable, if the two variables are highly correlated with one another but not with other variables. Naming Components • For each component, look at how it is correlated with the variables. • Try to name the construct represented by that factor. • If you cannot, perhaps you should try a different solution. • I have named our components “aesthetic quality” and “cheap drunk.” Communalities • For each variable, sum the squared loadings across components. • This gives you the R2 for predicting the variable from the components, • which is the proportion of the variable’s variance which has been extracted by the components. • Here are the communalities for our beer data. “Initial” is with all 7 components, “Extraction” is for our 2 component solution. Communalities COST SIZE ALCOHOL REPUTAT COLOR AROMA TASTE Initial 1.000 1.000 1.000 1.000 1.000 1.000 1.000 Extraction .842 .901 .889 .546 .910 .918 .922 Extraction Method: Principal Component Analysis. Orthogonal Rotations • Varimax -- minimize the complexity of the components by making the large loadings larger and the small loadings smaller within each component. • Quartimax -- makes large loadings larger and small loadings smaller within each variable. • Equamax – a compromize between these two. Oblique Rotations • Axes drawn through the two clusters in the upper right quadrant would not be perpendicular. • May better fit the data with axes that are not perpendicular, but at the cost of having components that are correlated with one another. • More on this later.