目前,是否有一种以流媒体方式在Julia中读取数据的好方法?
例如,假设我有一个太大而无法容纳在内存中的CSV文件。目前是否内置了函数或库,以便于使用它?
我了解DataFrames中的原型DataStream功能,但目前尚未通过公共API公开。
答案 0 :(得分:3)
eachline函数将IO源转换为行的迭代器。这应该允许您一次读取一行文件。从那里readcsv和readdlm函数可以读取每一行,如果你把它变成一个IOBuffer。
for ln in eachline(open("file.csv"))
data = readcsv(IOBuffer(ln))
# do something with this data
end
它仍然很好,但没有那么多步骤,所以它不是太糟糕。