【发布时间】:2015-10-29 12:22:38
【问题描述】:
我的代码由于内存不足而出错。实际上我在大数据上做了一个线性模型(lm)。问题不是因为它给了我想要记录的错误,而是因为它包含value[[3L]](cond)。
我的错误如下所示:
Error in value[[3L]](cond): While training model Error: cannot allocate vector of size 6.4 Gb
记录它的代码如下所示(使用日志库):
tryCatch({
# some code
tryCatch({
# some other code
}, warning = function(war){
logwarn(war, logger = "MyLogger")
}, error = function(err){
stop(paste("While training model", err, sep = " "))
})
some more code
}, error = function(err){
logerror(err, logger = "MyLogger")
})
我的问题是为什么它说Error in value[[3L]](cond):?我做错了什么我不知道吗?不应该只是Error: <error message>吗?
【问题讨论】:
-
什么?为什么是-1?我是 R 新手,所以如果我练习不好,请告诉我。或者,如果它总是在任何错误之前显示,那么告诉我,我在 google 上没有发现什么大问题(除非出现错误/警告,它已经出现在进行下一次迭代的问题中)
标签: r error-handling try-catch