根据Json内容将数千个Json文件上传到单个DataFrame中

时间:2019-02-18 15:40:48

标签: json csv dataframe concatenation jupyter

我正在使用Jupyter,并且对Python还是很陌生。 我将成千上万个Json文件放入目录,并且需要根据Json文件内容将文件转换为csv。

我已经尝试过仅找到不同的配置,但是没有一个能够满足我的需求。 我正在做以下

f = []

for (dirpath, dirnames, filenames) in walk('Directory/'):
     f.extend(filenames)

     break

File_Target=pd.DataFrame(['definition of name'])


for i in range(0, len(File_Target)):
    %reset_selective -f "^DATA$"
    DATA=pd.DataFrame()
    File_cons=File_Target[i]

    for ii in range(0, len(f)):

       file_name1='Directory/'
       file_name2= f[ii]
       file_name=file_name1+file_name2
       with open(file_name, 'r') as fer:
         data1 = json.load(fer)
         df = pd.DataFrame({'count': data1})
       File_file=df['count']['Target']

       if File_file==File_cons: 
          df_test = df['count']['Target']

          DATA=pd.concat([DATA,df_test], join='outer', join_axes=None, 
                      ignore_index=False,keys=None, levels=None, 
                      names=None, verify_integrity=False,
                      copy=True, sort=True)




Save_filna='Directory/'+File_cons+'.csv'
DATA.to_csv(Save_filna)

代码运行没有问题。但是,该目录包含1000多个json文件,每个json文件的每个DataFrame都具有10000多行。因此,代码运行非常缓慢。

有什么办法可以加快代码的速度?

0 个答案:

没有答案