使用Julia 1.0.0 我有一个75列和约700,000行的csv文件。直到昨天,我的代码仍在几秒钟内读取并转换为DataFrame。
RawDat = CSV.read("filename.csv", header=true, rows_for_type_detect=500,
missingstring="", categorical=false, types=dictm)
几天前,我安装了JLD.jl,它触发了多个软件包进行更新。我可能已经几个月没有更新我的软件包,包括CSV和DataFrames。自更新以来,我无法再读取相同的CSV文件。该代码将挂起20分钟以上,并且没有任何反应。
我尝试使用CSV.File,因为似乎已弃用CSV.read。这会读取文件,但我仍然无法将其转换为DataFrame。
RawDat = CSV.File("filename.csv", header=1, missingstring="",
categorical=false, types=dictm)
可以,但是如果我尝试
RawDat1 = DataFrame(RawDat)
它挂起,没有任何反应。同样,如果我尝试
RawDat = CSV.File("filename.csv", header=1, missingstring="",
categorical=false, types=dictm) |> DataFrame
无法读取文件。
有人可以帮助我了解为什么会这样,以及如何将这个csv文件读入DataTable吗?我有很多使用DataTable功能处理此文件的下游代码。
编辑
我相信我已经弄清楚了,然后发布,以防其他人遇到类似问题。我能够一次将文件转换为DataFrame一列。速度很快,但总的来说,我认为这应该自动完成,而不需要额外的代码行。到目前为止,这是可行的:
datcols = Tables.columns(RawDat)
MyDF = DataFrame()
kcs = keys(datcols)
for ci in kcs
MyDF[ci] = datcols[ci]
end