Skip to content

get_factor_variance() returns ndarray which is not ordered by variance. #132

Description

@schreibfheler

When i print the variance of the factors with get_factor_variance(), the variance is not monotonically decreasing. In my understanding each additional factor should explain less and less variance. The variance of my 15 factors looks like this (notice the values marked in bold):
[12.69, 5.32, 2.7, 2.6, 2.26, 2.08, 1.76, 2.54, 2.4, 1.69, 1.49, 2.06, 1.16, 1.15, 1.45]

n_factors = 15
fa = FactorAnalyzer(n_factors, rotation="varimax", method='principal', use_smc=True)
fa.fit(X)
print(pd.DataFrame(fa.get_factor_variance(),index=['Variance (sum of squared loadings)','Proportional Var','Cumulative Var']))

I cannot provide you with the data X

Expected behavior: the output should be sorted by decreasing variance

  • OS: macOS
  • Python: 3.11
  • Versions for factor_analyzer / numpy / scipy / pandas: newest

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions