Convert Python dict of Arrays into a dataframe
我有一个数组字典,如下所示:
1 | d = {'a': [1,2], 'b': [3,4], 'c': [5,6]} |
我想创建这样的熊猫数据框:
1 2 3 4 | 0 1 2 0 a 1 2 1 b 3 4 2 c 5 6 |
号
我写了以下代码:
1 | pd.DataFrame(list(d.items())) |
返回:
1 2 3 4 | 0 1 0 a [1,2] 1 b [3,4] 2 c [5,6] |
。
你知道我怎样才能达到我的目标吗?!
提前谢谢。
熊猫可以让你以一种简单的方式做到这一点:
1 2 3 4 5 | pd.DataFrame.from_dict(d,orient = 'index') >> 0 1 a 1 2 b 3 4 c 5 6 |
。
在理解中使用
1 2 3 4 5 6 | pd.DataFrame([k, *v] for k, v in d.items()) 0 1 2 0 a 1 2 1 b 3 4 2 c 5 6 |
如果您不介意将
1 2 3 4 5 6 | pd.DataFrame(d).T.reset_index() index 0 1 0 a 1 2 1 b 3 4 2 c 5 6 |
号
最后,虽然它相当难看,但在非常大的词典上,我能找到的最有效的选择是:
1 | pd.DataFrame(list(d.values()), index=list(d.keys())).reset_index() |