python - 将 Pandas 列转换为字典,其中列标题为键,列值作为值

标签 python pandas

所以,例如我有这个数据框:

ColA    ColB
AD      AC
BD      BC
CD      CC
DD      CD

如何将我的 df 转换为像这样的字典变量?

mydfDict = {'ColA' : ['AD','BD','CD','DD'] , 
            'ColB' : ['AC','BC','CC','CD'] 
           }

最佳答案

使用apply使用 join 然后 Series.to_dict :

d = df.apply(','.join).to_dict()
print (d)
{'ColA': 'AD,BD,CD,DD', 'ColB': 'AC,BC,CC,CD'}

详细信息:

print (df.apply(','.join))
ColA    AD,BD,CD,DD
ColB    AC,BC,CC,CD
dtype: object

但是如果想要列表,请使用 DataFrame.to_dict :

print (df.to_dict(orient='list'))
{'ColA': ['AD', 'BD', 'CD', 'DD'], 'ColB': ['AC', 'BC', 'CC', 'CD']}

关于python - 将 Pandas 列转换为字典,其中列标题为键,列值作为值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48222013/

相关文章:

python - 在 python 中推送到 json 时丢失字符串编码

python - 是否可以在没有 grako 的情况下使用 grako 生成的解析器?

python - 在 Python 中填写动态在线表单

python - pandas pivot_table 中的意外结果

python - 使用数据框 pandas (ylabel) 绘图

python - pandas DataFrame 添加 fill_value NotImplementedError

python - 从数组中中断并在 python 中运行另一个函数

python - 如何读取 pyspark avro 文件并提取值?

python - 如何在 Pandas 中复制行?

python pandas plot 系列 matplotlib