You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言EFA.dimensions包PCA分析提取公因子方差低于0.8的变量方法

R语言EFA.dimensions包PCA分析筛选公因子方差变量实现方案

完整可运行代码

# 1. 运行初始PCA并保存结果
pca_res <- PCA(data, corkind='pearson', Nfactors=11, Ncases=NULL)

# 2. 提取提取公因子方差(Extraction Communality)低于0.8的变量名
low_comm_vars <- rownames(pca_res$Communalities)[pca_res$Communalities[, "Extraction"] < 0.8]

# 可选:打印需要删除的变量列表,方便核查
print(low_comm_vars)

# 3. 从原数据集中删除低公因子方差变量
data_filtered <- data[, !colnames(data) %in% low_comm_vars]

# 4. 用过滤后的数据集重新运行PCA
pca_res_filtered <- PCA(data_filtered, corkind='pearson', Nfactors=11, Ncases=NULL)

注意事项

  • 运行前可先执行colnames(pca_res$Communalities)确认公因子方差表的列名,部分版本的包列名可能存在拼写差异,需和代码中的"Extraction"对应
  • 若过滤后剩余变量数小于设置的Nfactors=11,需调整因子数取值避免报错
  • 若需要迭代过滤直到所有变量的公因子方差都≥0.8,可将上述步骤封装为循环,设置停止条件为length(low_comm_vars) == 0即可

内容的提问来源于stack exchange,提问作者Laia-M.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 23:09:04