【发布时间】:2021-07-17 00:19:30
【问题描述】:
我正在尝试将嵌套的 JSON 文件转换为数据框。数据框现在看起来像这样:
| product | shelfId |
|---|---|
| {'product': [{'id': '111', 'quantity': 10}]} | aaa |
| {'product': [{'id': '222', 'quantity': 0}]} | bbb |
现在我想展平产品列,并得到一个像这样的 df:
| productId | productQuantity | shelfId |
|---|---|---|
| 111 | 10 | aaa |
| 222 | 0 | bbb |
有办法吗?
【问题讨论】:
-
type(df.loc[0,'product'])的输出是什么? -
是迂腐的,那不是 JSON 对象。那是一个 Python
dict -
这不能回答你的问题吗? stackoverflow.com/questions/46131731/…
-
好的,我明白了...谢谢!
-
我尝试了其他方法,df = pd.json_normalize(df['product']) 和 df = pd.DataFrame(df['product'].values.tolist(), index=df 。指数)。但是遇到了另一个问题。我在产品列中有空字典,例如:{'product': []}。拆分时,它会显示“列表”对象没有属性“值”。有没有办法解决这个问题? (抱歉对熊猫有点陌生)