如何使用Pandas从DataFrame的region列中过滤掉数字
移除
region列中的数字 方法1:用apply()实现
先定义一个移除数字的函数,再通过apply()把它作用到region列的每一行:
import pandas as pd # 假设你的DataFrame名为df def strip_numbers(text): # 筛选出所有非数字字符并拼接成新字符串 return ''.join([char for char in text if not char.isdigit()]) # 应用函数到region列 df['region'] = df['region'].apply(strip_numbers)
这段代码会把England6转换成England,原本不含数字的North East、Darlington则保持原样。
方法2:更高效的字符串替换(可选)
如果追求性能,直接用Pandas内置的str.replace()搭配正则表达式更省事,不用额外写函数:
df['region'] = df['region'].str.replace(r'\d+', '', regex=True)
正则\d+会匹配所有连续的数字,用空字符串替换后就能得到纯文本的区域名称。
处理后的效果
region列最终会变成:
England, North East, Darlington
内容的提问来源于stack exchange,提问作者elksie5000
相关产品推荐
相关产品推荐

