【发布时间】:2019-07-18 17:35:45
【问题描述】:
我正在尝试将具有 2 列的数据框转换为字典,其中第一列是键,第二列是一个字典中的所有值。
数据样本:
id summary
135791059 blha blah blah
135791051 blah something blah
这是我尝试过的代码
map_of_values = pd.Series(f_dataframe.summary.values,index=f_dataframe.id).to_dict()
print(map_of_values)
输出是:
{'id': {'blah blah blah': nan, 'blah something blah}
我希望它是:
{135791059:'blah blah blah blah',135791051:'blah something blah'}
我做错了什么?而且我还想迭代每个键值对,从中构建一个字符串。这是正确的方法吗?
【问题讨论】:
-
d=dict(df.values)如果id是一列,你也可以尝试dict(zip(df.id,df.summary))其中df是数据框的名称 -
我似乎无法用您提供的样本重现您的问题;我得到
{100: 'blha blah blah', 200: 'blah something blah'} -
编辑:我保留了我正在尝试的 id 值。我仍然得到与以前相同的结果。
-
谢谢大家的回答。但在代码中,我在将数据帧转换为字典之前对其进行了一些处理。这导致删除了 id 字段中的所有值。对不起,这是我的错!
标签: python pandas dictionary