【发布时间】:2021-05-14 14:18:05
【问题描述】:
来自Julia Discourse 的交叉发帖,以防这里的任何人有任何线索。
我只是想了解一下为什么下面的代码返回的数据框只包含我的 json 文件的第一行。如果您想尝试使用我正在使用的文件,您可以从Microsoft Open Academic Graph site 下载aminer_papers_0.zip,我正在使用该组文件中的第一个文件。
using JSON3, DataFrames, CSV
file_name = "path/aminer_papers_0.txt"
json_string = read(file_name, String)
js = JSON3.read(json_string)
df = DataFrame([js])
生成的 DataFrame 只有一行,但列标题是正确的,第一行也是如此。对我来说,谜团在于为什么其余部分没有得到处理。我想我可以排除 read() 只是读取第一个 JSON 对象,因为我可以索引到结果对象并看到许多 JSON 对象:
我的第一个猜测可能是换行符 \n 导致了转义问题,并尝试使用 chomp 来摆脱它们,但无法正常工作。
无论如何 - 任何帮助将不胜感激!
【问题讨论】:
-
你能分享你正在处理的文件吗?在我的机器上下载整个 zip 文件需要 9 小时。
-
是的 - 我将很快创建一个共享链接。不过,单个文件也很大,所以需要几分钟才能放到一个我可以分享的地方。
-
好的 - 我想你应该可以在这里得到它:dropbox.com/s/mfv8e7uc2267786/aminer_papers_0.txt?dl=0
-
OK - 我看到文件有 9GB。不幸的是,我没有足够的 RAM 来处理它。也许@quinnj 可以看看你的问题。我会ping他。您是否尝试过使用github.com/JuliaData/JSONTables.jl?
-
好的——没问题。而且我还没有给 JSONTables 一个适当的尝试。
标签: json julia dataframes.jl