小编典典

从条目具有不同长度的字典创建数据框

all

假设我有一个包含 10 个键值对的字典。每个条目都包含一个 numpy 数组。但是,数组的长度对于所有这些都不相同。

如何创建每列包含不同条目的数据框?

当我尝试:

pd.DataFrame(my_dict)

我得到:

ValueError: arrays must all be the same length

有什么办法可以克服吗?我很高兴 Pandas 使用NaN这些列填充较短的条目。


阅读 244

收藏
2022-09-02

共1个答案

小编典典

在 Python 3.x 中:

import pandas as pd
import numpy as np

d = dict( A = np.array([1,2]), B = np.array([1,2,3,4]) )

pd.DataFrame(dict([ (k,pd.Series(v)) for k,v in d.items() ]))

Out[7]: 
    A  B
0   1  1
1   2  2
2 NaN  3
3 NaN  4

在 Python 2.x 中:

替换d.items()d.iteritems().

2022-09-02