基于熊猫数据框创建嵌套字典

时间:2016-08-24 20:29:24

标签: python-3.x pandas dictionary

我有一个像这样的数据框

data = np.zeros((3,), dtype=[('A', 'a10'), ('B', 'f4'), ('C', 'f4')])
data[:] = [('key1', 1, 2), ('key2', 3, 4), ('key3', 5, 6)]
df = pd.DataFrame(data)

我希望将它转换为数据帧的字典,第一列是字典的关键字。我怎样才能创建这样的字典?

1 个答案:

答案 0 :(得分:3)

试试这个:

data = np.zeros((3,), dtype=[('A', 'a10'), ('B', 'f4'), ('C', 'f4')])
data[:] = [('key1', 1, 2), ('key2', 3, 4), ('key3', 5, 6)]
df = pd.DataFrame(data)

df

         A  B  C
0  b'key1'  1  2
1  b'key2'  3  4
2  b'key3'  5  6

转换:

df.set_index('A').T.to_dict()

结果:

{b'key1': {'B': 1.0, 'C': 2.0},
 b'key2': {'B': 3.0, 'C': 4.0},
 b'key3': {'B': 5.0, 'C': 6.0}}