将Json文件读取为Pandas Dataframe错误 [英] Reading Json file as Pandas Dataframe error

查看:640
本文介绍了将Json文件读取为Pandas Dataframe错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个Json文件,如下所示.这是字典列表.

I have a Json file as follows. It's a list of dicts.

[{"city": "ab", "trips": 4, "date": "2014-01-25", "value": 4.7, "price": 1.1, "request_date": "2014-06-17", "medium": "iPhone", "%price": 15.4, "type": true, "Weekly_pct": 46.2, "avg_dist": 3.67, "avg_price": 5.0}, {"city": "bc", "trips": 0, "date": "2014-01-29", "value": 5.0, "price": 1.0, "request_date": "2014-05-05", "medium": "Android", "%price": 0.0, "type": false, "weekly_pct": 50.0, "avg_dist": 8.26, "avg_price": 5.0}.....]

当我使用以下内容阅读此内容时:

When I read this using this:

data=pd.read_json('dataset.json')

我收到以下错误:

ValueError:预期的对象或值

ValueError: Expected object or value

我也尝试过:

from ast import literal_eval

with open('dataset.json') as f:
    data = literal_eval(f.read())

df = pd.DataFrame(data)

它给出了以下错误:

ValueError:格式错误的字符串

ValueError: malformed string

即使Json.loads也不起作用.尝试过:

Even Json.loads doesn't work. Tried this:

import json
data=json.loads('dataset.json')

ValueError:无法解码JSON对象

ValueError: No JSON object could be decoded

Json文件为13.5MB,但似乎有大量数据.

The Json file is 13.5MB but it seems to have huge amounts of data.

推荐答案

我认为您可以使用模块json读取file.json然后读取DataFrame constructor:

I think you can use modul json for reading file.json and then DataFrame constructor:

import pandas as pd
import json

with open('file.json') as f:
   data = json.load(f)
print data
[{u'city': u'ab', u'medium': u'iPhone', u'request_date': u'2014-06-17', u'price': 1.1, u'Weekly_pct': 46.2, u'value': 4.7, u'%price': 15.4, u'avg_price': 5.0, u'date': u'2014-01-25', u'avg_dist': 3.67, u'type': True, u'trips': 4}, {u'city': u'bc', u'medium': u'Android', u'request_date': u'2014-05-05', u'price': 1.0, u'weekly_pct': 50.0, u'value': 5.0, u'%price': 0.0, u'avg_price': 5.0, u'date': u'2014-01-29', u'avg_dist': 8.26, u'type': False, u'trips': 0}]

print pd.DataFrame(data)

   %price  Weekly_pct  avg_dist  avg_price city        date   medium  price  \
0    15.4        46.2      3.67        5.0   ab  2014-01-25   iPhone    1.1   
1     0.0         NaN      8.26        5.0   bc  2014-01-29  Android    1.0   

  request_date  trips   type  value  weekly_pct  
0   2014-06-17      4   True    4.7         NaN  
1   2014-05-05      0  False    5.0        50.0  

这篇关于将Json文件读取为Pandas Dataframe错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆