【发布时间】:2019-06-06 09:22:41
【问题描述】:
我在一个文件夹中有大约 800 个 json 文件,我想将所有这些文件转换为其 csv 格式。这些必须在不指定文件名的情况下完成。我的 json 文件非常嵌套,所以需要转换的想法将其转换为 csv 格式。
json文件示例
[
{
'Extract_date': '2019-06-04'
},
{
'lat,lon': '0,0'
},
{
'current': [
{
'source': 'sg',
'value': 99.04
},
{
'source': 'meto',
'value': 99.04
}
],
'swell': [
{
'source': 'sg',
'value': 192.28
},
{
'source': 'noaa',
'value': 201.69
},
],
'Height': [
{
'source': 'sg',
'value': 0.4
},
{
'source': 'noaa',
'value': 0.36
},
],
'time': '2019-06-04T00:00:00+00:00',
'wind': [
{
'source': 'sg',
'value': 153.43
},
{
'source': 'noaa',
'value': 156.89
},
{
'source': 'icon',
'value': 153.43
}
],
'Speed': [
{
'source': 'sg',
'value': 4.92
},
{
'source': 'noaa',
'value': 5.46
},
{
'source': 'icon',
'value': 4.92
}
]}]
代码应该从文件夹中检索 json 文件,然后为我需要扁平结构的 json 文件生成 csv 文件。
我尝试的代码仅适用于一个文件,但它仅将数据显示为一行。
import os
import pandas as pd
import json
import numpy as np
data = []
os.chdir('/home/Documents/04.06.2019')
with open('new.json', encoding="utf8") as data_file:
for line in data_file:
data.append(json.loads(line))
dataframe = pd.DataFrame(data)
dataframe.to_csv("filename.csv", encoding='utf-8',index= False)
【问题讨论】:
-
你尝试了什么?显示您的代码。显示扁平结构的示例。
-
请描述您做了什么以及您遇到的问题。正如所写的那样,就像您要求某人为您编写一个实用程序,这完全是题外话。
-
想要的输出是什么?检查 jq 及其@csv 格式化程序
-
我尝试过的代码只用于一个文件,但它只给我一行数据。
-
想要的输出是 json 文件必须转换成它的 csv 格式 @lojza
标签: python json python-3.x csv python-3.6