如何并行运行psych包计算tetrachoric相关?
解决tetrachoric函数并行计算的配置方案
核心配置步骤
- 先通过
options()设置并行核心数,考虑到系统自身需要预留资源,建议用8核(你的笔记本有10核,留2核给系统避免卡顿)。 - 配置代码要放在调用
tetrachoric()之前,确保生效。
完整修改后的代码
library(psych) library(tidyverse) # 设置并行核心数 options("mc.cores" = 8) # 读取数据 temp = read.csv("~/Temp/data.csv", sep=",") # 并行计算 tetrachoric 相关系数 tetravalues = tetrachoric(temp, delete=FALSE) # 提取相关矩阵并保存 tetraframe = tetravalues$rho write.csv(tetraframe, file="~/Temp/output.csv")
额外注意事项
- 如果运行时提示parallel包相关错误,手动加载parallel包即可:
library(parallel)(该包是R基础包,无需额外安装)。 - 若8核仍觉得慢,可以尝试调到9核,但需注意系统运行状态,避免出现无响应情况。
内容的提问来源于stack exchange,提问作者Tony
相关产品推荐
相关产品推荐

