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

R语言如何删除数据框Twin_Pair列的pair前缀保留括号内内容

R数据框指定列前缀清理方案

核心思路

因为前缀格式固定为pair+任意长度数字,不需要关注前缀具体长度,直接提取目标格式(括号及内部内容)或删除所有括号前的内容即可,两种高效实现方案如下:

方案1:tidyverse生态(可读性高,最常用)

依赖dplyr和stringr包,用正则直接提取括号段:

# 加载依赖包
library(dplyr)
library(stringr)

# 处理Twin_Pair列
df <- df %>%
  mutate(Twin_Pair = str_extract(Twin_Pair, "\\(.*\\)"))

说明:正则\\(.*\\)会精准匹配从左括号到右括号的完整片段,完全兼容pair1到pair1000及以上的所有前缀长度场景。

方案2:Base R实现(无额外依赖)

用正则替换掉所有括号前的内容:

df$Twin_Pair <- sub("^[^(]+", "", df$Twin_Pair)

说明:正则^[^(]+匹配字符串开头到左括号前的所有非左括号字符,替换为空后剩余内容就是目标括号段。

两种方案均为向量化操作,哪怕百万行级数据也可以秒级完成处理,性能远高于逐行截取固定长度的写法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 00:27:03