如何组合循环生成的数据帧

时间:2018-03-25 17:02:39

标签: python loops dataframe

我开始循环从文件夹中的json生成数据帧。

for filename in os.listdir('json1'):
with open(os.path.join('json1',filename),'r') as json_data:
    d=json.load(json_data)
    df2=pd.io.json.json_normalize(d)
    df2.columns = df2.columns.map(lambda x: x.split(".")[-1])
    df3=pd.io.json.json_normalize(d['Reviews'])
    df3.columns = df3.columns.map(lambda x: x.split(".")[-1])
    df4=pd.concat([df2]*df3.shape[0],ignore_index=True)
    df5=df4.join(df3)
    print(df5)

我打印的结果包含为文件夹中的每个json文件生成的数据帧。但是,我想知道如何将所有这些数据帧组合成一个大数据帧。它们都有类似的列,但可能略有不同。

1 个答案:

答案 0 :(得分:0)

尝试以下方法:

def my_read_json(filename, **kwargs):
    # ...
    return df5

df = pd.concat([my_read_json(f) for f in files], ignore_index=True)