Why factor analysis are only applied to numeric data?

r
factor_analysis

#1

I was trying to do factor analysis on iris data set but while performing the factor analysis I am getting the error that it can applied to numeric data only but I want to know why this is not possible .

z <- iris
f1<-factanal(z,factor=2)
Error in factanal(z, factor = 2) :
factor analysis applies only to numerical variables


#2

@harry,

It does not work with categorical variables because factor analysis is based on a correlation or covariance matrix, it assumes the observed indicators are measured continuously, are distributed normally, and that the associations among indicators are linear.

Regards,
Pravin