Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Index generation and parallel analysis for factor analysis

    Dear all,

    In the course of my thesis I’m investigating voting behavior in favor of right-wing populist parties in western Europe, using the last two waves of the European Social Survey (ESS7 and 8).
    Beside economic variables I’ll include variables measuring attitudes towards immigration as well as some variables measuring a concept of “populism” (although not flawless with the given data).
    I’ve used factor analysis for different items of immigration and what you could call “populism”, to investigate which of these variables load for the same factor as well as to create indices afterwards.

    Two questions appeared to me while doing this.
    • First, I’m confused how the results of my logistic regression differ including the generated indices instead of using an additive index created by myself out of the same variables. E.g. for immigration the odds-ratio differ from 1.592*** (additive index) to 2.412*** (generated index). Is this just “normal” or have I overlooked something?
    • Second, to decide how many factors I’ll include I would like to use parallel analysis (in addition to the Kaiser criterion and looking at a screeplot). Searching the net guided my to the “fapara” program. The problem is, that I can’t find it anymore. Typing “search fapara” “findit fapara” doesn’t help. I’ve tried using the “paran” command, but it doesn’t really satisfy me. Any suggestions?

    The variables of the example range from 1 to 4 (zuw1-zuw3) and from 0 to 10 (immig1-immig3)

    Index creation through factor analysis:

    Code:
    factor zuw1 zuw2 zuw3         ///
    immig1 immig2 immig3, blanks(0.4)
            
    estat kmo
    
    screeplot, yline(1)
    
    rotate, promax normalize blanks (0.4)
    
    estat common
    
    predict indxzuw indximmig
    
    rotate, clear

    Index creation by myself:

    Code:
    egen indxzuw2 = rowtotal(zuw*), miss
    replace indxzuw2 = (indxzuw2/12)*100
    
    egen indximmig2 = rowtotal(immig*), miss
    replace indximmig2 = (indximmig2/30)*100

    Regression:

    Code:
    eststo clear
    
    eststo: quietly logit     wahlat alter geschl test_ess                          ///
                                     abl3m einkq i.oekus i.bildung                        ///
                                     indxzuw2 indximmig2 rlskala beweu                      ///
                                     indxvpolnat indxdemozu indxvpolinat indxpolverdr    ///
                                     [pw=pspwght]
                                     vif, uncentered
    
    esttab, se mtitles wide scalars(r2_p) eform (1 1 1 1 1)

    Thanks for help!



  • #2
    Originally posted by Christoph Loew View Post
    Typing “search fapara” “findit fapara” doesn’t help.
    I've noticed that, if I type “search (fapara)” or “findit (fapara)”, I am just referred to a page for the other user-written command you mention ("paran") and to a UCLA page that no longer exists (also cited by some websites and publications): https://stats.oarc.ucla.edu/stata/fa...ysis-in-stata/ (the video describing "fapara" according to https://sites.google.com/view/statis...ontents/pcaefa doesn't exist anymore either: https://www.youtube.com/watch?v=5YDIwMhIHpM). Instead, if I drop the parentheses, I also get the link to install the "fapara" package. Here one can download a folder also including the "fapara" ado file: https://stats.oarc.ucla.edu/stata/ado/analysis/
    Last edited by Federico Tedeschi; 24 Aug 2022, 03:08.

    Comment

    Working...
    X