如何将DataFrame中gender列的1、2值替换为female和male
Pandas数据框gender列值替换方案
以下是3种常用的实现方式,按需选择即可:
- 方案1:使用
map做映射替换,适合固定枚举值的转换场景,逻辑最直观
# 定义取值映射关系 gender_mapping = {1: 'female', 2: 'male'} # 对gender列执行替换 df['gender'] = df['gender'].map(gender_mapping)
- 方案2:使用
replace方法,未匹配到映射关系的原始值会保留,适合不需要全量覆盖的场景
df['gender'] = df['gender'].replace({1: 'female', 2: 'male'})
- 方案3:使用
numpy.where做条件判断,仅适用于当前列只有1、2两个取值的场景
import numpy as np df['gender'] = np.where(df['gender'] == 1, 'female', 'male')
注意事项
如果你的gender列存储的是字符串格式的'1'、'2',只需要把上述代码中映射关系的键改为字符串类型即可,比如修改为{'1': 'female', '2': 'male'}。
内容的提问来源于stack exchange,提问作者xena
相关产品推荐
相关产品推荐

