首页 > 解决方案 > 从 DataFrame 创建字典

问题描述

我正在尝试从 DF 创建字典但是我没有得到所需的输出:

数据框:

A      B   C    D  
0.0   0.0 NaN  NaN 
0.0   0.0 NaN  NaN 
0.0   0.0 NaN  NaN 
0.0   0.0 NaN  NaN 
0.0   0.0 NaN  NaN 

data_dict1 = adsl.to_dict('list')

电流输出:{'A': [0.0, 0.0, 0.0, 0.0, 0.0, 0.0]}

期望的输出:{'A': {0.0, 0.0, 0.0, 0.0, 0.0, 0.0}}

区别是方括号而不是花括号。

标签: pythonpandasdataframedictionary

解决方案


如果你有一个例子df一个创建dict

data = {'col_1': [3, 2, 1, 0], 'col_2': ['a', 'b', 'c', 'd']}
df = pd.DataFrame.from_dict(data)

你可以做:

data_dict = df.to_dict('dict')

data_dict将会:

{'col_1': {0: 3, 1: 2, 2: 1, 3: 0}, 'col_2': {0: 'a', 1: 'b', 2: 'c', 3: 'd'}}

如果您只想保留col_1,您可以使用this删除col_2data_dict

data_dict.pop('col_2',None)

您的新data_dict将是:

{'col_1': {0: 3, 1: 2, 2: 1, 3: 0}}

推荐阅读