我从 Twitter 上提取了数据。目前,数据位于多个文件中,我无法将其合并到一个文件中。注意:所有文件均为 JSON 格式。我使用的代码在这里和这里。建议使用它glop 来编译 JSON 文件我编写这段代码就像我在一些关于使用 Python 合并 JSON 的教程中看到的那样from glob import glob import jsonimport pandas as pdwith open('Desktop/json/finalmerge.json', 'w') as f: for fname in glob('Desktop/json/*.json'): # Reads all json from the current directory with open(fname) as j: f.write(str(j.read())) f.write('\n')我成功合并了所有文件,现在文件是 Finalmerge.json。现在我按照几个线程中的建议使用了它:df_lines = pd.read_json('finalmerge.json', lines=True)df_lines1000000*23 columns 那么,我应该怎么做才能将每个功能放在单独的列中呢?我不确定 JSON 文件为什么有问题,我检查了合并的文件,发现它作为 JSON 文件无效?我应该怎么做才能将其作为数据框?我问这个问题的原因是我有非常基本的Python知识,而且我发现的类似问题的所有答案都比我能理解的要复杂得多。请帮助这位 Python 新用户将多个 JSON 文件转换为一个 JSON 文件。
1 回答
喵喔喔
TA贡献1735条经验 获得超5个赞
我认为问题在于您的文件并不是真正的 json (或者更好,它们的结构为jsonl)。您有两种处理方式:
您可以将每个文件作为文本文件读取并逐行合并它们
您可以将它们转换为 json(在文件开头添加方括号,并在每个 json 元素末尾添加逗号)。
您还可以尝试这样编辑代码:
with open('finalmerge.json', 'w') as f:
for fname in glob('Desktop/json/*.json'):
with open(fname) as j:
f.write(str(j.read()))
f.write('\n')
每一行都是不同的 json 元素。
添加回答
举报
0/150
提交
取消