如何在熊猫Python中将嵌入式JSON文件转换为CSV

时间:2019-06-18 08:55:37

标签: python json python-3.x pandas csv

您好,我收到了以下格式的JSON文件,请让我知道如何解析此JSOn文件并将其转换为CSV

JSON文件格式

{'Sections': [{'MC': [[{'IsMandatory': False,
      'LD': None,
      'propNameValuepair': [{'PropertyType': 0,
        'columnSize': 0,
        'isEnabled': False,
        'isStructured': False,
        'isUpdated': False,
        'propDisplayName': 'CC',
        'propName': 'u4_c_c',
        'propValue': 'Bottle',
        'selectedComponent': None,
        'tcProperty': None},
       {'PropertyType': 0,
        'columnSize': 0,
        'isEnabled': False,
        'isStructured': False,
        'isUpdated': False,
        'propDisplayName': 'Com Com',
        'propName': 'u4_com_com',
        'propValue': 'Multi-layer',
        'selectedComponent': None,
        'tcProperty': None},

代码

import json
with open('a.json') as data_file:    
      data = json.load(data_file)
import pandas as pd
df = pd.concat([pd.DataFrame(x) for x in data], ignore_index=False)
print(df)

错误:

  

ValueError:DataFrame构造函数未正确调用!

1 个答案:

答案 0 :(得分:1)

也许您可以先将json文件转换为DataFrame对象:

df = pd.read_json('file.json')

然后使用内置方法将其转换:     df.to_csv()

N.B:在读取JSON时,您将不得不根据具有“ orient”属性的json格式来调整读取参数:

df = pd.read_json('file.json', orient="records")

orient =“记录|索引|列|值|表”