Applying FA to groupings

let’s say X is a dataframe with nummerical columns except one "salaryRange" column, and I want to do FA analysis for each group of salaryRange that has more than 100 observations. I managed to do this, but can’t seem to nail it (the filtering of more than 100 observations I couldn’t do):

X %>%
  group_by(salaryRange) %>%
  summarise(factanal(factors = 3 scores = "Bartlett") -> Y

Ideally I would end up with all FA solution for all salaryRanges, but maybe FA is not a function suitable for summarise(). Any help welcome!