【发布时间】:2021-06-03 15:36:02
【问题描述】:
我是python的初学者。我有一个嵌套字典。我试图从嵌套字典列表中获取 pandas 数据框。
名为user_dict 的嵌套字典如下:
[{'1000003': {'car': 0.0, 'car_passenger': 0.0, 'pt': 0.0, 'walk': 0.0, 'bike': 0.0}}, {'1000007': {'car': 0.0, 'car_passenger': 0.0, 'pt': 856.0786277323101, 'walk': 2546.869189662443, 'bike': 0.0}},
{'1000008': {'car': 0.0, 'car_passenger': 34189.569164682835, 'pt': 0.0, 'walk': 0.0, 'bike': 0.0}},
{'1000009': {'car': 0.0, 'car_passenger': 0.0, 'pt': 0.0, 'walk': 0.0, 'bike': 9847.472668350396}}]
我想得到这样的数据框:
我根据 Igor Raush 的回答 (Getting pandas dataframe from list of nested dictionaries) 使用了代码
from itertools import chain
pd.DataFrame.from_items(list(chain.from_iterable(d.iteritems() for d in user_dict))).T
但它对我不起作用,相反,它引发了这样的错误:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-21-8ea27c4b8e43> in <module>
----> 1 pd.DataFrame.from_items(list(chain.from_iterable(d.iteritems() for d in user_dict))).T
AttributeError: type object 'DataFrame' has no attribute 'from_items'
它适用于 classmethod pd.concat,但我有超过 200k 的观察结果,所以我正在寻找有效的解决方案。非常感谢任何解决方案。
【问题讨论】:
标签: python pandas dataframe dictionary