将数据帧转换为dict?

时间:2018-04-12 15:38:14

标签: python pandas dictionary dataframe

我有以下数据结构(称为df):

    x         Fx          Fxcum
0  -1.192809  0.888734    0.888734
1  -1.182809  0.483803    1.372537
2  -1.172809 -0.318153    1.054384
3  -1.162809 -0.966345    0.088038
4  -1.152809 -1.512387   -1.424349

标题xFxFxcum是动态的。如果我应用函数tolist()

dict(y=df['x'].tolist())

我明白了:

{'x': [-1.192809,
       -1.182809,
       -1.172809,
       -1.162809,
       -1.152809]}

首先,我需要阅读并非总是xFxFxcum的标题,并获取以下列表:

{'x': [-1.192809,
       -1.182809,
       -1.172809,
       -1.162809,
       -1.152809],
 'Fx': [-1.192809,
       -1.182809,
       -1.172809,
       -1.162809,
       -1.152809],
 'Fxcum': [-1.192809,
       -1.182809,
       -1.172809,
       -1.162809,
       -1.152809]}

你能指出我正确的方向吗?我是否需要创建一个循环或者是否有一些可以帮助我的库?

1 个答案:

答案 0 :(得分:0)

在您的帖子中,您似乎正在使用Pandas。

Pandas有一种方法可以满足您的需求:https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_dict.html

df.to_dict('list')

示例:

>>> df
   col1  col2
a     1   0.1
b     2   0.2
>>> df.to_dict('list')
{'col1': [1, 2], 'col2': [0.5, 0.75]}