我浏览了有关此错误的现有 stackoverflow 链接,但没有解决方案,因为那里有效(有些问题也没有解决方案)
这是我面临的问题:我使用并行包的 mclapply 并行运行 Arima 模型。示例数据被按键拆分到不同的核心上,结果使用 do.call + rbind 组合在一起(我放置脚本的服务器有 20 个 cpu 核心,这些核心被传递到 mc.cores 字段)
以下是我的 mclapply 代码:
print('Before lapply')
data_sub <- do.call(rbind, mclapply(ds,predict_function,mc.cores=num_cores))
print('After lapply')
我得到了多组如下值作为“predict_function”的输出
所以基本上,我从多个核心获取上面给出的文件以发送到 rbind。该代码适用于某些数据部分。现在,我得到另一组数据,与上面相同,每列的数据类型相同,但第 2 列的值不同
每列的数据类型在上面的列名中给出。
对于第二种情况,我得到以下错误:
charToDate(x) 中的 simpleError:字符串不是标准的明确格式
警告信息:在 mclapply(ds, predict, mc.cores = num_cores) : 调度核心 9 在用户代码中遇到错误,所有作业的值都会受到影响
对于第二种情况,我没有看到此打印: print('After lapply') ,但对于第一种情况是可见的。
我检查了上面数据框中的日期列,它是日期格式的。当我尝试unique(df$DATE)
时,它以上面给出的格式抛出所有有效值。
这里错误的原因是什么?它是第一个由于 mclapply 无法 rbind 值吗?我们需要更好地理解警告吗?
任何建议将不胜感激。