在Julia中流式传输数据

时间:2014-05-23 00:43:25

标签: julia

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

例如,假设我有一个太大而无法容纳在内存中的CSV文件。目前是否内置了函数或库,以便于使用它?

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

1 个答案:

答案 0 :(得分:3)

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

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

它仍然很好,但没有那么多步骤,所以它不是太糟糕。