【发布时间】:2016-11-03 03:40:01
【问题描述】:
我有一个DataFrame,如下:
In [23]: df = pandas.DataFrame({'Initial': ['C','A','M'], 'Sex': ['M', 'F', 'F'], 'Age': [49, 39, 19]})
df = df[['Initial', 'Sex', 'Age']]
df
Out[23]:
Initial Sex Age
0 C M 49
1 A F 39
2 M F 19
我的目标是创建一个这样的字典:
{'C': ('49', 'M'), 'A': ('39', 'F'), 'M': ('19', 'F')}
目前,我正在这样做:
In [24]: members = df.set_index('FirstName', drop=True).to_dict('index')
members
Out[24]: {'C': {'Age': '49', 'Sex': 'M'}, 'A': {'Age': '39', 'Sex': 'F'}, 'M': {'Age': '19', 'Sex': 'F'}}
然后我使用dict comprehrension 将键的值格式化为元组而不是字典:
In [24]: members= {x: tuple(y.values()) for x, y in members.items()}
members
Out[24]: {'C': ('49', 'M'), 'A': ('39', 'F'), 'M': ('19', 'F')}
我的问题是:有没有办法从熊猫DataFrame 获得我想要的格式的dict,而不会额外听到dict 理解?
【问题讨论】:
-
你想把年龄变成字符串吗?
-
@unutbu 没关系。
标签: python pandas dictionary dataframe