【发布时间】:2021-04-27 04:16:41
【问题描述】:
我有一个字典列表:
list_of_dicts = [{'name': 'a', 'counts': [{'dog': 2}]},
{'name': 'b', 'counts': [{'cat': 1}, {'capibara': 5}, {'whale': 10}]},
{'name': 'c', 'counts': [{'horse':1}, {'cat': 1}]]
我想将其转换为 pandas 数据框,如下所示:
| Name | Animal | Frequency |
|---|---|---|
| a | dog | 2 |
| b | cat | 1 |
| b | capibara | 5 |
| b | whale | 10 |
| c | horse | 1 |
| c | cat | 1 |
在当前代码中,我尝试对其进行规范化:
from pandas import json_normalize
df = json_normalize(list_of_dicts, 'counts')
但我认为我走错了方向。另外,如果我做一个简单的 df = pd.DataFrame(list_of_dicts) ,它会导致每个 dicts 列表都是一个单行值,这是不希望的。
【问题讨论】:
标签: python pandas list dictionary json-normalize