数据框到字典列表
Posted
技术标签:
【中文标题】数据框到字典列表【英文标题】:Dataframe to list of dicts 【发布时间】:2020-05-15 20:44:29 【问题描述】:我有以下数据框:
key category amount
2019-01 abc 123
2019-01 xyz 111
2019-02 abc 87
2019-02 xyz 34
2019-03 abc 15
2019-04 def 64
我将如何将这些数据转换为下面的字典列表。本质上,每个 dict 代表一个类别以及该类别的所有日期和相应数量:
[
"category": "abc",
"2019-01": 123,
"2019-02": 87,
"2019-03": 15
,
"category": "xyz",
"2019-01": 111,
"2019-02": 34
,
"category": "def,
"2019-04": 64
]
【问题讨论】:
这能回答你的问题吗? Pandas DataFrame to List of Dictionaries 【参考方案1】:在 GroupBy.apply
中使用 lambda 函数并合并 2 个字典:
f = lambda x: **'category': x.name, **dict(zip(x['key'], x['amount']))
L = df.groupby('category', sort=False).apply(f).tolist()
print (L)
['category': 'abc', '2019-01': 123, '2019-02': 87, '2019-03': 15,
'category': 'xyz', '2019-01': 111, '2019-02': 34,
'category': 'def', '2019-04': 64]
【讨论】:
甜蜜!这是一个艰难的以上是关于数据框到字典列表的主要内容,如果未能解决你的问题,请参考以下文章