首页 > 解决方案 > 如何将多个 json 文件加载并合并到一个数据帧中?

问题描述

我有多个 json 文件(所有格式相同,标题相同),我想加载并合并到一个数据帧中。

for f_name in glob('some_dir/*.json'):
     ww = pd.read_json(f_name, lines=True)

上面两行代码加载了所有的.json文件,json文件中的每一项都是一个字符串,变量ww包含多个数据框(打印type(ww)时)。

之后,我尝试使用以下方法将每个条目转换为字典:

kk = pd.DataFrame.from_dict(dict(ww)) 

然后尝试使用 pd.concat 将它们全部组合起来,这是我在使用 pd.concat 时收到的错误消息:

 TypeError: first argument must be an iterable of pandas objects, you passed an object of type "DataFrame"

如果有人能解释如何解决这个问题以及为什么打印类型给了我一种与实际看起来不同的类型,那就太好了。

编辑:每个 json 文件都有多个输入,如下所示:

 {"Name":"Anna", "Year": "1987", "Location":"Asia","Colour":"Blue"}

预期输出:

 Name Year Location Colour 
 Anna 1987 Asia     Blue

标签: jsonpython-3.xpandasdataframe

解决方案


推荐阅读