Step-by-Step Guide 15 (Jamovi):

Principle Component & Exploratory Factor Analysis


On this page you will learn how to run a PCA/EFA using Jamovi. 

In our survey on extremism, we were not able to measure extremism directly, so we created a series of questions that would allow us to measure people's level of extremism. So rather than having one variable that measures extremism, we now have a series of about 10 questions that all partially measure this. 

This is where Principle Component or Exploratory Factor Analysis comes in. These methods allow us to reduce these 10 variables into 1, which measures people's extremism score. Below we will show you how this is done. 

Dataset used for examples & Variables required

Skoczylis, Joshua, 2021, "Extremism, Life Experiences and the Internet",, Harvard Dataverse, Version 3.

Variables required for test:

Variable Use in Example: n/a.  Ordinal variables are used in Example


Variable Use in Example: 

Note: Many ordinal variables in the extremism dataset are classified as categorical. That said, Jamovi does recognise them as ordinal, as long as these are not text (e.g. the underlying level needs to be numbered). But still double check your variables to make sure they are ordinal before you use them. 

PCA & EFA: Step-by-Step Guide 


As outlined the purpose of these tests is to reduce your data to make the analysis more manageable. The extremism survey used a series latent variables to measures people's views on the use of violence. These tests allow us to see whether these latent variables can be combined into score to measure extremism. 

Note: In Jamovi running a PCA and EFA is almost identical. So here we will cover both. In an EFA also have to select your Extraction Method

Note: As mentioned above running a PCA and EFA are almost identical. After watching the above video you should be able to also run a PCA. If you do want a specific video on how to run a PCA watch this video.


Before going through the step-by-step guide decide which one of the two methods you will be using. In most cases you should select EFA. This is the standard technique with the Social Sciences. 

Select PCA if: 

If you just want to reduce your variables to a few more manageable ones, the use a PCA and you haven't got a theory, then feel free to use a PCA. Components are created based on the underlying maths rather than being influences by any theory or conceptual framework.

Select PCA if: 

If you have a theory/conceptual framework then you should use an EFA. EFA also allows to either base the number of factors on Eigenvalues and/or test if there are as many/few factors as your theory suggest. 

In the Example below, we will be using EFA.


Navigate to EFA & Select your variables

Navigate to Analyses > Factor > Principle Component/Exploratory Factor Analysis

Now Select your variables. For this example we are selecting all variables between Place in World to Violence_justified_promote_views. 

In this example we are using EFA, the aim is to see whether the above latent variables fit together to measure extremism. 


Select your Extraction, Rotation & Assumptions

Extraction (not applicable to PCA):

As we are using an EFA, we now need to select our extraction method. For our example we will select the Principle Axis method. 


Now select your rotation method. We assume that the factors are correlated, so we select one of the following three:  Promax, Oblimin or Simplimax. In our example we will select Promax.


Finally, select both Assumption tests. Your results should appear on the right-hand side. Results for the example are below.


KMO Measures of Sampling Adequacy (MSA): Two of the variables (Place_World & Understand_Personality) have an MSA score of just above 0.5. Here we are looking at values ideally above 0.6, so remove these two variables.

Bartlett's test of Sphericity: Here we are looking for a significant p-value, in this case this is <.001 meaning the assumption is met and we can go ahead with the EFA.


Decide on the number of Factors & Additional output

Use parallel analysis if you have a small dataset (in the low hundreds, otherwise base your analysis on Eigenvalues (usually you would just put in Eigenvalues greater than  1) or check your desired number of factors.

You can also select some of the Additional Outputs available. These just provide you more information about your Factors. 

It makes sense to get the following additional information: Factor Summary, Factor Correlations (if you have more than 1 factor), and the Scree Plot (the initial Eigenvalues is the Scree plot in table format). 

Below you can see a Scree plot/ Initial Eigenvalues table. As you can see only 1 factor has an Eigenvalue of over 1 (if you had more than one factor with an Eigenvalue over 1 then you should consider having more than one factor) 

Finally, the table the factor summary just tells you how much of the variance is explained by each of the factors. In our example it is 58.3%.


Save your Factors

Finally, all you need to do is save your Factors scores. This will create a new variable for each factor. Use the default estimation method. 

Navigate to Variables > the new variable created. Now you can just rename it to whatever you want.

The new variable created is scales using a normalises scale like z-scores. Depending how your variable is distributed, this may not make intuitive sense. Jamovi makes is relatively simple to re-scale the variable (e.g. a scale of 0-100 or 0-10). 

Use Jamovi's compute function to rescale your variable. For a refresher visit Tutorial 1.  In the image below you can see how easy it is to re-scale a variable. 

Note: Sometimes you may need to reverse code it (e.g. high factor score are low extremism scores). This is easily done by swapping c and d around in your equation (so rather than scaling from 0-10 you scale from 10 to 0). 

Voila, we have now created a new extremism score that is scaled 0-10.