代码之家  ›  专栏  ›  技术社区  ›  jay.sf

为什么我不能打破一个*。Rdata加载过程?

  •  1
  • jay.sf  · 技术社区  · 7 年前

    当试图中断加载*时,R似乎没有响应。Rdata文件 load("*.Rdata")

    我试图用不同的文件和大小打破几个文件加载过程。唯一的可能性似乎是终止R。我正在处理加载时间超过半小时的大文件。

    enter image description here

    1 回复  |  直到 4 年前
        1
  •  2
  •   Ben Bolker    7 年前

    我想你被困住了。R不能保证低级进程是否会被用户中断。低级C代码需要调用 R_CheckUserInterrupt() 为了“注意”用户请求中断执行(参见Wickham的 advanced r book code for loading data

    我能想到的唯一解决方法(除了确保确实要加载特定的数据文件外)是找到方法将数据分解为较小的块(并在将它们读入R后适当地连接这些块)。如果数据读取是一个很大的瓶颈,那么您可以查看 high-performance computing task view