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

Pandas如何根据Fruit列值匹配对应计数列新增指定列

最优实现方案

优先推荐向量化操作方案,相比行级遍历/apply性能高数十倍,完全适配业务侧大量分类的场景:

方案1:通用高效实现(兼容全版本pandas)

借助给定的映射字典匹配对应列名,直接按索引取数:

# 将Fruit字段映射为对应的计数列名
target_cols = df['Fruit'].map(fruit_dict)
# 按行取对应列的数值写入新列
df['Fruit_count'] = df.lookup(df.index, target_cols)

方案2:高版本pandas兼容方案(pandas >= 1.2.0,lookup已弃用场景)

df['Fruit_count'] = df.to_numpy()[df.index, df.columns.get_indexer(df['Fruit'].map(fruit_dict))]

小数据量简易方案(数据量低于1万行时可使用,可读性更高)

df['Fruit_count'] = df.apply(lambda row: row[fruit_dict[row['Fruit']]], axis=1)

以上三种方案执行后均可得到符合逻辑要求的结果,生产环境优先选用方案1或方案2。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 10:00:04