簡體   English   中英

Python和Stata中的因子分析

[英]Factor Analysis in Python and Stata

我有一個包含 29 個項目的數據集要運行探索性因素分析。 我已經在 Python 和 Stata 中使用相同的因素實現了這個數據集,但我有兩個不同的結果。 實際上它們是不同的,因為我確定了特征值:在 Python 中它是 4,但在 Stata 中只有 2。

為什么會有這樣的差異,我應該采取哪種結果? 這是我的代碼 Python

df = df[df.g1 == 3]
fa = FactorAnalyzer()
fa.set_params(n_factors=6) # so factor
fa.fit(df)
fa.loadings_
fa_loading_df = pd.DataFrame(fa.loadings_, columns=['Factor 1', 'Factor 2', 'Factor 3', 'Factor 4', 'Factor 5', 'Factor 6'])

斯塔塔

factor k2x1-k2x29 if g1==3, factor(6)
rotate, varimax norm blanks(.40)

結果

您需要了解每個命令執行什么類型的探索性因子分析 (EFA),以及您希望它執行什么類型。 EFA有多種類型,如主因子、主成分因子、ML等。

我猜 Python 和 Stata 有不同的默認方法,因此你會得到不同的結果。 在您的命令中,您沒有指定要使用的方法,因此使用默認方法。

在 Stata 中,默認是主要因素,而在 Python 中,我猜默認是 minres,根據這個網站: https ://factor-analyzer.readthedocs.io/en/latest/factor_analyzer.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM