【问题标题】:Streaming data in Julia在 Julia 中流式传输数据
【发布时间】:2014-05-23 00:43:25
【问题描述】:

目前,有没有一种以流方式在 Julia 中读取数据的好方法?

例如,假设我有一个 CSV 文件太大而无法放入内存。目前是否有内置函数或库可以方便地使用它?

我知道 DataFrames 中的原型 DataStream 功能,但目前尚未通过公共 API 公开。

【问题讨论】:

  • 不幸的是,最好的方法是清理 DataStream 代码。令人惊讶的是,它即将完成,但需要大约一天的时间才能准备好使用。

标签: julia


【解决方案1】:

eachline 函数将 IO 源转换为行的迭代器。那应该允许您一次读取一行文件。从那里 readcsv 和 readdlm 函数可以读取每一行,如果你把它变成一个 IOBuffer。

for ln in eachline(open("file.csv"))
  data = readcsv(IOBuffer(ln))
  # do something with this data
end

自己动手还是不错的,但是步骤不多,所以还不错。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多