【问题标题】:JSON data to Pandas DataFrameJSON 数据到 Pandas DataFrame
【发布时间】:2016-05-09 08:30:00
【问题描述】:

帮助我有一个 JSON 文件,但我无法将它加载到 python DataFrame 中。 第一个问题可能应该是这实际上是一个 json 文件吗?是在网页上呈现图表时生成的文件,这是我从 chrome 网络检查中提取的后端数据。

前面的代码似乎不是 JSON 或不是表格,所以它搞乱了导入。

http://pastebin.com/ne4RRrgP

请帮忙

下面将文件加载到python中

import json
from pprint import pprint
with open('data2.json') as data_file:
    data = json.load(data_file)

pprint(data)

确实打印了数据,但我无法转换为 pandas 数据框

编辑

好的,这一定是我认为是 JSON 的 javascript 文件。

【问题讨论】:

  • json 验证器说这是不正确的 json (http://jsonlint.com/) +为什么你想把那个巨大的类似 html 的字符串和 javascript 转换成数据框?
  • 是否可以添加url地址和此数据来提问?
  • 很抱歉,这是一个登录站点,并且不想分享密码。从日期和价格数据生成图表。我已经搜索了图表是如何生成并来到这个表的,我假设它是 json,它可能不是。事情是我需要删除的开头和结尾可能有额外的代码。因此,我通过检查图表呈现时加载到 chrome 的数据发现了这个文件

标签: python json pandas dataframe


【解决方案1】:

只需使用pandas.read_json,它只是对 json 类的包装,但可以采用远程 URL 以及本地文件名:

import pandas as pd
pandas_dataframe = pd.read_json('data2.json')

希望对您有所帮助。

【讨论】:

  • 不幸的是它不起作用,检查它:print pd.read_json('http://pastebin.com/raw/ne4RRrgP')
  • @jezrael 使用“原始”链接 -- pd.read_json('http://pastebin.com/raw/ne4RRrgP')
  • 为我返回ValueError: Unrecognized escape sequence when decoding 'string'
【解决方案2】:

数据格式不正确我必须编辑文本,然后将其正确加载到 Pandas。通过删除标题和反斜杠,现在看起来它是一个包含 jason 数据的 ajax 请求。

{"status": "success", "chart": "\n\n\n\n\n\n\n\n\n\n    \n\n\n\n\n\n\n\n\n<div id=\"id-freight-cash-prices-chart\" style=\"min-height: 480px\"></div>\n\n\n    <script>\n        $(function () {\n\n            var series = [{\"type\": \"line\", \"data\": [{\"date\": 1262563200000, \"last\": \"319.00000\"}, {\"date\": 1262649600000, \"last\": \"318.00000\"}, {\"date\": 1262736000000, \"last\": \"320.00000\"}, {\"date\": 1262822400000, \"last\": \"321.00000\"},

感谢大家的帮助

【讨论】:

    猜你喜欢
    • 2017-04-29
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2019-11-14
    • 2016-01-21
    • 2020-02-25
    • 2022-08-02
    • 2019-04-22
    相关资源
    最近更新 更多