directly use eigfact! and svdfact for PCA