[英]Convert a dictionary to pandas dataframe
我有一本字典,其中的值為odict_items
:
{1: odict_items([('a', 0.0952), ('b', 14.583351), ('c', 120000), ('d', 6000)]),
2: odict_items([('a', 0.098733336), ('b', 14.526156), ('c', 120000), ('d', 6000)])}
當我將其轉換為數據幀時,輸出如下:
df = pd.DataFrame(dict.values())
0 1 2 3
0 (a, 0.0952) (b, 14.583351) (c, 120000) (d, 6000)
1 (a, 0.0987) (b, 14.526156) (c, 120000) (c, 6000)
但所需的輸出如下(第一列是鍵,接下來的列是 odict_items 中的值):
a b c d
1 0.0952 14.583351 120000 6000
2 0.0987 14.526156 120000 6000
任何幫助,將不勝感激。
您需要從項目中重建有效的字典:
pd.DataFrame.from_dict({k: dict(v) for k,v in dic.items()}, orient='index')
輸出:
a b c d
1 0.095200 14.583351 6000 NaN
2 0.098733 14.526156 120000 6000.0
使用的輸入:
from collections import OrderedDict
dic = {1: OrderedDict([('a', 0.0952), ('b', 14.583351), ('c', 120000), ('c', 6000)]).items(),
2: OrderedDict([('a', 0.098733336), ('b', 14.526156), ('c', 120000), ('d', 6000)]).items()}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.