ValueError。当把json读成pandas数据帧时,预期的对象或值[英] ValueError: Expected object or value when reading json as pandas dataframe

本文是小编为大家收集整理的关于ValueError。当把json读成pandas数据帧时,预期的对象或值的处理方法,想解了ValueError。当把json读成pandas数据帧时,预期的对象或值的问题怎么解决?ValueError。当把json读成pandas数据帧时,预期的对象或值问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

样本数据:

{
   "_id": "OzE5vaa3p7",
   "categories": [
      {
         "__type": "Pointer",
         "className": "Category",
         "objectId": "nebCwWd2Fr"
      }
   ],
   "isActive": true,
   "imageUrl": "https://firebasestorage.googleapis.com/v0/b/shopgro-1376.appspot.com/o/Barcode%20Data%20Upload%28II%29%2FAnil_puttu_flour_500g.png?alt=media&token=9cf63197-0925-4360-a31a-4675f4f46ae2",
   "barcode": "8908001921015",
   "isFmcg": true,
   "itemName": "Anil puttu flour 500g",
   "mrp": 58,
   "_created_at": "2016-10-02T13:49:03.281Z",
   "_updated_at": "2017-02-22T08:48:09.548Z"
}

{
   "_id": "ENPCL8ph1p",
   "categories": [
      {
         "__type": "Pointer",
         "className": "Category",
         "objectId": "B4nZeUHmVK"
      }
   ],
   "isActive": true,
   "imageUrl": "https://firebasestorage.googleapis.com/v0/b/kirananearby-9eaa8.appspot.com/o/Barcode%20data%20upload%2FYippee_Magic_Masala_Noodles,_70_g.png?alt=media&token=d9e47bd7-f847-4d6f-9460-4be8dbcaae00",
   "barcode": "8901725181222",
   "isFmcg": true,
   "itemName": "Yippee Magic Masala Noodles, 70 G",
   "mrp": 12,
   "_created_at": "2016-10-02T13:49:03.284Z",
   "_updated_at": "2017-02-22T08:48:09.074Z"
}

我试过了:

import pandas as pd
data= pd.read_json('Data.json')
<块引用>

得到错误 ValueError: Expected object or value

还有

import json
with open('gdb.json') as datafile:
    data = json.load(datafile)
retail = pd.DataFrame(data)
<块引用>

错误:json.decoder.JSONDecodeError:额外数据:第 2 行第 1 列(字符 509)

with open('gdb.json') as datafile:
for line in datafile:
    data = json.loads(line)
retail = pd.DataFrame(data)
<块引用>

错误:json.decoder.JSONDecodeError:额外数据:第 1 行第 577 列(字符 576)

如何将这个json读入pandas

推荐答案

遇到同样的错误,请阅读函数 文档 并使用不同的参数.

我用下面的方法解决了,

data= pd.read_json('Data.json', lines=True)

你可以试试其他的,比如

data= pd.read_json('Data.json', lines=True, orient='records')

data= pd.read_json('Data.json', orient=str)

本文地址:https://www.itbaoku.cn/post/1727914.html