将json字符串解析为数据帧

时间:2018-07-12 00:13:51

标签: python json pandas dataframe

我有一个嵌套的json字符串,如下所示:

[{'id': 'tfghnbkivbgdcse',
  'authorization': None,
  'operation_type': 'in',
  'card': {'type': 'debit',
   'brand': 'mastercard',
   'address': None,
   'card_number': '123456XXXXXX7890',
   'holder_name': 'aaaa bbbb’,
   'expiration_year': '21',
   'expiration_month': '11',
   'bank_name': 'XXXXBANK',
   'bank_code': '000'},
  'status': 'failed',
  'creation_date': '2018-06-30T23:59:16-05:00',
  'error_message': 'Bank authorization is required for this charge',
  'order_id': '1743790',
  'amount': 2668.0,
  'currency': 'USD',
  'customer': {'name': 'AAAA',
   'last_name': 'BBBB',
   'email': 'XXXX_1234@outlook.com',
   'phone_number': '1234567890',
   'address': None,
   'creation_date': '2018-06-30T23:59:17-05:00',
   'external_id': None,
   'clabe': None},
  'fee': {'amount': 0.95, 'tax': 0.152, 'currency': 'USD'}}]

我想将json字符串转换为数据框。我使用了json_normalize中的pandas.io.json,但出现错误。

1 个答案:

答案 0 :(得分:0)

如果您这样做,它将起作用

  • 将所有“无”更改为“无”
  • 更改<footer> <ul id="footer_list"> <li class="footer_list_item">A Blah Blah Production</li> <li class="footer_list_item">Phone: xxx-xxx-xxxx</li> <li class="footer_list_item">Email: <a href="#">support@company.com</a></li> <li class="footer_list_item"><a href="#">Career Info</a></li> </ul> </footer>(最后一个字符是一个不同的单引号字符)
  • 将所有<'>更改为<“>

如果json数据是python代码的一部分,则可能只是您需要修复的引号字符。

'aaaa bbbb’ to 'aaaa bbbb'