微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将磁盘帧写入CSV的最佳方法是什么?

如何解决将磁盘帧写入CSV的最佳方法是什么?

我正在浏览docs and,但没有看到用于写入CSV的功能

看来有写磁盘框架的功能,但不清楚它以什么格式存储

write_disk.frame

将data.frame / disk.frame写入disk.frame位置。如果df是data.frame,则在大多数情况下建议使用as.disk.frame函数

我可以将fwritewrite_csv用于磁盘框架吗?

解决方法

我明白了。我可能经常看到此请求,因此可能会将写入功能添加到csv功能中。

尽管如此,最好的跟踪方法是在github https://github.com/xiaodaigh/disk.frame/issues上提交问题,我这次看到的是https://github.com/xiaodaigh/disk.frame/issues/311

如果您想将每个数据块写入单独的CSV文件中,只需

df %>%
  cimap(function(id,chunk) {
    data.table::fwrite(chunk,file.path("some/path/",paste0(id,".csv"))
    NULL # return null since you don't need to return anything
  },lazy=FALSE)

例如

library(disk.frame)

a = as.disk.frame(nycflights13::flights)

cimap(a,function(chunk,id) {
  data.table::fwrite(chunk,file.path(tempdir(),".csv")))
  NULL
},lazy=FALSE)


dir(tempdir())

如果要写入一个文件,只需修改以通过append=TRUE写入一个文件,但是请确保关闭多个工作器!

setup_disk.frame(workers = 1) # only one worker
cmap(a,function(chunk) {
  data.table::fwrite(chunk,"one_file.csv"),append = TRUE)
  NULL
},lazy=FALSE)
setup_disk.frame() # turn multi worker back on 


dir(tempdir())

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?