r - 如何在不使用 memory.size 和 memory.limit 的情况下解决“错误:无法分配大小为 XX 的向量”
问题描述
我在 R 中运行一个非常简单的代码(使用 RStudio),它使用了一个已经编码的函数。
使用该功能时,出现经典错误:
"错误: 无法分配大小为 XX 的向量",
因为对于函数而言,其中一个输入是“大”向量。
我一直在寻找解决方案,但都指向使用 memory.size() 和 memory.limit()。问题是我在服务器上工作,所以这些功能不可用(仅适用于 Windows)。由于我在服务器上工作,原则上我的内存应该没有问题(可用内存远大于 R 说无法处理的内存。
任何建议都会非常有用,谢谢!!
编辑:这是代码:
rm(list = ls())
library(readstata13)
library(devtools)
library(csranks)
library(dplyr)
k1 <- read.dta13("k1.dta")
gc()
CS_simul <- cstauworst(k1$K1, k1$se1, tau=10, R=5, seed=101, na.rm=TRUE)
cstauworst 是库曲柄中包含的函数。数据 k1 是“小”(小于 1 MB,大约 60k obs),但对于函数而言很大。该算法需要同时使用整个数据,因此我无法逐个运行或并行运行它。
解决方案
推荐阅读
- ios - 如何在应用程序 iOS 中查看 XCode 的控制台日志?
- python - 如何在 Django 中批量 get_or_create?
- javascript - 如何在图像滑块上设置滑动动画
- php - PHP 从 Json 中选择数据
- azure-mysql-database - 获得 97% SOS_WORK_DISPATCHER 并且找不到任何信息
- r - R for 循环遍历子目录以读取 SAS txt 和设置文件并绑定到数据框中
- r - 如何按部分字符串(或第一个单词)对数据帧进行排序
- javascript - 使用传单 CSS 和 JavaScript 文件将地图实现到 HTML 文件中的问题
- python - 从 Python 脚本连续打印到 C 程序
- python - Flask Celery:事件同步类型