基于分裂函数的R

基于分裂函数的R,r,for-loop,split,factor-analysis,R,For Loop,Split,Factor Analysis,我有以下数据集: MKT econ_unemp econ_gas open 504 0.0743088 3.461 38 504 0.0740673 3.448 38 504 0.0740673 3.455 38 504 0.0740673 3.42 38 504 0.072682 3.391 38 505 0.0692244 3.345 38 505 0.0692244 3.381 38 505 0.0692244

我有以下数据集:

MKT econ_unemp  econ_gas open
504 0.0743088   3.461    38
504 0.0740673   3.448    38
504 0.0740673   3.455    38
504 0.0740673   3.42     38
504 0.072682    3.391    38
505 0.0692244   3.345    38
505 0.0692244   3.381    38
505 0.0692244   3.484    38
505 0.0692244   3.488    38
我需要按市场对3个变量进行因子分析,因此我使用R中的分割函数分割数据:

  splitx<-split(data,data$DMA)
我希望所提供的资料足够。有人能帮我修一下吗

问候

by(data[, -1], data[, 1], factanal, factors = 1)

假设MKT是分割变量,这应该可以做到。

我想你想要
factanal(splitx[[I]],factors=1)
否则你根本不在循环中使用
I
,这将是愚蠢的。是的,但是这样做我会得到以下错误:optim中的错误(start,FAfn,FAgr,method=“L-BFGS-B”,lower=lower,:optimso提供的非有限值我不需要for循环吗?@user6016731-这实际上是通过将循环包装在函数中来“隐藏”循环,但使其更易于解释。@user6016731您能看一看,以便我们能更好地提供帮助吗?
Error in optim(start, FAfn, FAgr, method = "L-BFGS-B", lower = lower,:non-finite value supplied by optim
by(data[, -1], data[, 1], factanal, factors = 1)