我正在使用ffdf
包进行一些数据预处理。我的工作计算机有4个CPU内核和8 Gb内存,我可以处理大约0.2到3亿个数据点,这真是太棒了。
但是,我有另一个约束。大ffdf
个对象耗尽了我计算机的磁盘空间。当我将5个表合并为一个表,并在其上添加20个列时,我收到了一条消息"no disk space"
。
所以,我想删除磁盘驱动器上未使用的ffdf
个对象。我可以在不退出R会话的情况下完成吗? (我对文件夹有读,写和执行权限。)
我尝试了所有我知道的内容,例如unlink()
,file.remove()
,delete()
,close()
,finalize()
,finalizer()
,{{1 }}”。
ffdrop()
答案 0 :(得分:1)
首先需要关闭ff文件,然后才能执行file.remove。
类似close(yourffdf)
或close(yourffobject)
以及下一个file.remove(list.files(yourpath), recursive=TRUE, full.names=TRUE)
的内容
require(ff)
x <- as.ffdf(iris)
sapply(filename(x), file.remove) ## Will fail
close(x)
sapply(filename(x), file.remove) ## Works