如何在pandas DataFrame中替换字符串值并删除Country列末尾数字
实现方法
核心思路是利用pandas字符串处理方法结合正则表达式,匹配并删除Country列字段末尾的所有连续数字:
- 核心处理代码
# 导入pandas(未导入时需要先执行) import pandas as pd # 替换Country列末尾的所有数字为空 df['Country'] = df['Country'].str.replace(r'\d+$', '', regex=True)
- 代码说明
正则表达式r'\d+$'中,\d+匹配1个及以上的连续数字,$锚定字符串末尾位置,确保只会删除字符串末尾的数字,不会影响字符串中间出现的数字内容。处理后原有内容不会有其他变动:China2会变为China,Denmark5会变为Denmark,其余没有末尾数字的国家名称保持原样。
如果你的数据中存在国家名称和末尾数字之间带空格的情况(比如China 2),可以将正则调整为r'\s*\d+$',即可同时删除末尾数字前的多余空格。
内容的提问来源于stack exchange,提问作者Mónica Larre Bolaños Cacho
相关产品推荐
相关产品推荐

