Facilitating Confirmatory Factor Analyses
When you conduct survey research, you often have to run a confirmatory factor analysis (CFAs) to check whether the measured constructs are statistically different from each other (e.g., fit indices and model comparisons) or whether there is a common method bias. Conducting and evaluating CFAs, however, is a tedious task. Even after becoming familiar with the technique, you still spend a lot of time repeatedly creating, comparing, and reporting on different CFA models.
I wrote ConMET, an application written in R, that makes it easier to analyze typical CFA models that you have to report in most journals. With this app you can work much faster because it automatically creates, tests, and compares nested measurement models. It also provides you with a table that summarizes the results, which you can insert directly into your manuscript. Another advantage is that the application has a point-and-click user interface, which means you don’t have to program to run CFAs.
ConMET relies heavily on the lavaan package (Rosseel, 2012) and uses functions from the semTools package (Jorgensen et al., 2020) to obtain reliabilities. Please make sure to cite these packages when using the output of the application.
Tutorial
Here you can find a tutorial on how to use the application. You can also test ConMET by using the example datasets.
How to access the application:
- You can open this link: https://leanderdeschutter.shinyapps.io/conmet/. This is an online version of the application and works slower than when your run the app locally on your computer. The app is hosted on shinyapps.io, and the data you upload is stored in a temporary directory and removed once you close the session. I use the free version which only has limited uses every month, so there is a chance that the link will not work.
- You can also run the app locally on your computer. You can do this by running the code below in your R console. This will install the required packages for the application and then open the app in R. The function just retrieves the code in the ‘myapp’-folder from this GitHub page and then runs it on your computer.
# install the R shiny package if you havent installed it before.
# install.packages("shiny")
library(shiny)
runGitHub("conmet", "leander-ds", subdir = "myapp")
About me
I am Leander De Schutter, a PhD Candidate at the Rotterdam School of Management, Erasmus University. In my research I examine how people maintain cooperative relationships in the workplace. I am also interested in how methodological techniques can be made more accessible. The latter is exactly the purpose of the shiny application I wrote: ConMET. Feel free to reach out to me at deschutter@rsm.nl if you encounter any bugs, have any comments, questions or change requests.