解决R语言临时文件目录的问题(tempdir、tempfile)

最近在调用SparkR的时候,当用copy_to函数将R中的数据框导入到Spark时,会在默认的tempdir()目录下(这里默认目录即为/tmp)产生巨大的临时文件,

严重影响R脚本的运行,最终一番折腾,查找资料,终于搞定。解决办法如下:

1 #change the tempdir() location
2 tempdir <- function() "/data/Rtmp"
3 unlockBinding("tempdir", baseenv())
4 utils::assignInNamespace("tempdir", tempdir, ns="base", envir=baseenv())
5 assign("tempdir", tempdir, baseenv())
6 lockBinding("tempdir", baseenv())

验证下:

1 > tempdir()
2 [1] "/data/Rtmp"
3 > tempfile()
4 [1] "/data/Rtmp/file65e45db77a8d"

ok,搞定!

posted @ 2016-09-09 00:10  payton数据之旅  阅读(6019)  评论(0编辑  收藏  举报