R语言Psych包如何从fa.parallel函数输出中提取因子数量
提取方法
fa.parallel() 运行时除了绘制碎石图、打印控制台提示,本身会返回存储全量计算结果的列表对象,你只要把函数输出赋值给变量,就能直接取到推荐的因子数,完全不需要解析控制台打印的文本。
- 第一步:改写原代码,把平行分析的结果存到自定义变量里
pa_result <- fa.parallel( cor(data), n.obs = nrow(data), fa = "fa", n.iter = 100, main = "Scree plots with parallel analysis" )
- 第二步:从结果对象里提取目标值
结果对象的nfact字段存的就是平行分析推荐的因子数量,ncomp字段存的是推荐的主成分数量,直接取值赋值给后续流程要用的变量即可:
# 你给出的示例中,该变量的取值为2 recommended_nfact <- pa_result$nfact
如果不确定结果对象里有哪些可提取字段,跑一句
str(pa_result)就能看到完整的对象结构。直接读取结构化返回值的方式比正则匹配控制台文本靠谱得多,不会因为包版本更新调整了提示文案就失效。
内容的提问来源于stack exchange,提问作者Hesper
相关产品推荐
相关产品推荐

