将pandas数据帧转换为字典时,如何将所有不同的值附加到列表中?参考:将Pandas DataFrame转换为字典
该问题的答案指定了解决方案,但它给出了以下输出:
df = pd.DataFrame({'a': ['red', 'yellow', 'blue', 'red'], 'b': [0.5, 0.25, 0.125, 0.9]})
>>> df.set_index('a').T.to_dict('list')
{'red': [0.9], 'yellow': [0.25], 'blue': [0.125]}
预期产量:
{'red': [0.5,0.9], 'yellow': [0.25], 'blue': [0.125]}
DataFrame.groupby
与list
s和一起使用Series.to_dict
:
print (df.groupby('a')['b'].apply(list).to_dict())
{'blue': [0.125], 'red': [0.5, 0.9], 'yellow': [0.25]}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句