Why do my EFA and CFA results differ in R analysis?

I’m scratching my head over some weird stuff happening with my factor analysis in R. I used the psych package for EFA and then Lavaan for CFA to double-check things. But now I’m not sure what to believe.

I know EFA and CFA are different beasts, but shouldn’t they give similar results if I use the same factor structure? Here’s what’s bugging me:

  1. EFA shows a 3-factor structure with all loadings under 1.
  2. CFA with the same structure gives standardized loadings over 1 and warns about negative residual variance.

This makes me nervous about trusting the psych package results. I’m using oblique rotation, which can give loadings over 1, but only if residual variance is positive, right?

So which one should I trust? EFA says everything’s fine, but CFA is throwing red flags. Has anyone run into this before? Any tips on how to make sense of it?

# Example code (not actual)
library(psych)
library(lavaan)

# EFA
efa_result <- fa(my_data, nfactors = 3, rotate = 'oblimin')

# CFA
cfa_model <- 'factor1 =~ item1 + item2 + item3
              factor2 =~ item4 + item5 + item6
              factor3 =~ item7 + item8 + item9'
cfa_result <- cfa(cfa_model, data = my_data)

I’m really stuck here. Help!

hey, ive had similar issues. my guess is that sample size or outliers might disrupt cfa. check your data and try a different rotation; sometimes, efa gives clearer insights. adjust your model if needed, might help.

I’ve encountered similar situations before and found that the differences between EFA and CFA can often be attributed to their contrasting methodologies. EFA is exploratory in nature, allowing for more flexibility, while CFA strictly tests a predefined model. The presence of standardized loadings over 1 and negative residual variances in your CFA results suggests that the model might be misspecified or that there may be issues within your data. I recommend reexamining your dataset for potential problems such as multicollinearity or outliers, adjusting your CFA model as needed, and ensuring that your theoretical underpinnings are robust. In practice, both methods are useful when viewed as complementary rather than entirely contradictory.