You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Polars数据框与字典进行关联映射?

如何将Polars数据框与字典进行关联映射?

嘿,这问题我熟!你要把Polars数据框里的region列和字典的键对应上,生成带对应值的新列对吧?其实Polars早就给咱们准备好现成的方法了,几步就能搞定~

先给你回顾下你的初始代码:

import polars as pl  

my_dict = {
    'a': 1,
    'b': 2,
}

my_df = pl.DataFrame({'region': ['a', 'b', 'a']})

要实现映射,直接用Polars的map_dict()方法就行,它专门干这种字典映射的活儿,代码写起来超简洁:

# 生成带映射值的新列
result_df = my_df.with_columns(
    pl.col('region').map_dict(my_dict).alias('region_value')
)

# 打印结果
print(result_df)

运行这段代码后,你就能得到想要的结果:

┌────────┬──────────────┐
│ region │ region_value │
│ ---    │ ---          │
│ str    │ i64          │
╞════════╪══════════════╡
│ a      │ 1            │
│ b      │ 2            │
│ a      │ 1            │
└────────┴──────────────┘

顺便给你提个小技巧:如果你的region列里可能存在字典中没有的键,怕报错的话,可以给map_dict()加个default参数设置默认值,比如:

# 处理匹配不到的情况,默认填0
result_df = my_df.with_columns(
    pl.col('region').map_dict(my_dict, default=0).alias('region_value')
)

这样就算有不在字典里的区域值,也会自动填0,不会让程序崩掉~

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 13:08:05