You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何使用Pandas将DataFrame整列转换为指定格式的字典?

把Pandas DataFrame转换成指定格式字典的方法

嘿,刚上手Pandas的话,这个需求其实很容易实现,我给你一步步讲清楚:

核心方法:用to_dict(orient='list')

Pandas的DataFrame自带的to_dict()方法,只要指定orient='list'参数,就能直接生成你想要的格式——列名作为字典的键,列内所有值组成的列表作为对应的值。

假设你的DataFrame名为df,且包含latlon两列,直接运行下面的代码就行:

result_dict = df[['lat', 'lon']].to_dict(orient='list')

举个完整的示例

先创建一个和你目标格式匹配的示例DataFrame,再演示转换过程:

import pandas as pd

# 模拟你的原始DataFrame
df = pd.DataFrame({
    'lat': [37.974508, 38.050247, 37.985352],
    'lon': [-87.582584, -87.540012, -87.50776],
    # 假设还有其他无关列
    'other_col': ['a', 'b', 'c']
})

# 只筛选需要的列,再转换为目标字典
target_dict = df[['lat', 'lon']].to_dict(orient='list')
print(target_dict)

运行后输出的结果就是:

{'lat': [37.974508, 38.050247, 37.985352], 'lon': [-87.582584, -87.540012, -87.50776]}

额外提醒

  • 如果你的DataFrame列名不是lat/lon(比如叫“纬度”“经度”),先重命名列再转换:
    df.rename(columns={'纬度': 'lat', '经度': 'lon'}, inplace=True)
    
  • 一定要记得筛选出latlon列,不然DataFrame里的其他列也会被加到字典里哦~

内容的提问来源于stack exchange,提问作者Ayush Pathak

火山引擎 最新活动