我尝试在笔记本电脑上使用R运行大约2GB(500,000行)的大型数据集的HLM回归,此数据集的格式为spss(.sav)。我无法共享数据,如我的教授要求,但我会尽力提供尽可能多的细节。这是我的一些代码。
data<- spss.get("Stanford Dataset .sav")
result1 <- lmer(SCIENCE ~ GDP + Individualism+ Gender+ Gender*GDP+
Individualism*Gender + (1+Gender|Country/School),data = data)
summary(result1)
问题是,运行回归并打印summary
需要大约5分钟。有没有更快的方法来处理这个大型内存模型?
实际上我尝试了以下一些方法:
1)在data.table
包中使用data.table
。在运行回归之前data <- data.table(data)
。然而,我等待结果的时间比以前多了几分钟。
2)在as.big.matrix
包中使用bigmemory
,它会显示错误:
list2env(数据)中的错误:第一个参数必须是命名列表
似乎矩阵在函数lmer
中不起作用。
所以我现在真的缺乏想法,任何相关的想法都会有所帮助。
非常感谢!