如何批量移除DataFrame列名中的Name_与Year_前缀?
批量移除列名前缀的解决方案
以下是针对Python(Pandas)和R两种常用数据分析工具的批量重命名方法,无需手动逐个修改:
Python (Pandas)
利用字符串替换的正则匹配,直接批量处理所有列名:
import pandas as pd # 假设你的数据框名为df df.columns = df.columns.str.replace(r'^(Name_|Year_)', '', regex=True)
- 正则表达式
^(Name_|Year_)匹配以Name_或Year_开头的字符串,^确保只替换开头的前缀,避免误删列名中间的相同字符。 str.replace会自动遍历所有列名完成替换。
R
两种实现方式,任选其一即可:
基础R方法
# 假设你的数据框名为df colnames(df) <- gsub("^(Name_|Year_)", "", colnames(df))
stringr包方法(更直观)
library(stringr) colnames(df) <- str_remove_all(colnames(df), "^(Name_|Year_)")
两种方法都通过正则精准匹配开头的Name_或Year_前缀,并将其替换为空字符串,实现批量重命名。
内容的提问来源于stack exchange,提问作者syntax_of_vectors
相关产品推荐
相关产品推荐

