如何重命名DataFrame列中的值,提取末尾含_val后缀的对应部分
实现方案
完全可以使用str.replace方法完成这个需求,只要配合正则匹配后缀规则即可,实现非常简单。
核心逻辑
- 用正则表达式
r'_val$'匹配目标后缀,其中$符号限定匹配必须出现在字符串末尾,不会误杀内容中间包含_val的字符串 - 直接对value列调用
str.replace执行替换即可,不符合后缀规则的内容会自动保持原样
完整代码示例
import pandas as pd # 构造你的示例DataFrame df = pd.DataFrame({ 'id': ['s1', 'q2', 'b3', 'a3'], 'value': ['like_val', 'upd_val', 'opt_far_val', 'string_upload'] }) # 执行替换:pandas 2.0+版本需要手动指定regex=True开启正则匹配 df['value'] = df['value'].str.replace(r'_val$', 'val', regex=True) # 输出结果验证 print(df)
运行输出
id value 0 s1 val 1 q2 val 2 b3 val 3 a3 string_upload
内容的提问来源于stack exchange,提问作者skulldoger
相关产品推荐
相关产品推荐

