You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何删除R数据框中部分指定列的列名前缀,其余列保持不变

R实现指定列名前缀移除的方法

你可以根据你的使用场景选择基础R或tidyverse体系的实现方案:

基础R实现

无需加载额外依赖,直接操作列名字符串即可:

# 定义需要移除前缀的目标列
target_cols <- c("ATH_V1", "ATH_V6")
# 匹配目标列后替换前缀
colnames(df)[colnames(df) %in% target_cols] <- sub("^ATH_", "", colnames(df)[colnames(df) %in% target_cols])

其中正则表达式^ATH_仅匹配列名开头的前缀字符串,不会误替换列名中间出现的对应字符。

dplyr(tidyverse)实现

如果你习惯使用tidyverse语法,可以用rename_with函数批量处理指定列:

library(dplyr)

df <- df %>%
  rename_with(
    .fn = ~ sub("^ATH_", "", .x),
    .cols = c(ATH_V1, ATH_V6)
  )

两种方案执行后,数据框的列名将变为V1、ATH_V2、ATH_V3、ATH_V4、ATH_V5、V6、ATH_V7,符合修改需求。

内容的提问来源于stack exchange,提问作者adR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 06:48:01