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

如何在R中使用dplyr提取列元素的起始名称并替换原值?

使用dplyr清理names列:提取起始英文名称

针对你需要处理的10万行数据,我们可以借助dplyr结合stringr(tidyverse套件包含这两个包)的字符串处理功能,快速提取names列开头的纯字母部分,去掉后续的数字和字符。

完整实现代码

library(tidyverse)

# 构造示例数据
names = c("John123abc","George12894xyz","Mary789qwe")
value = c(1,2,3)
dat = tibble(names,value)

# 处理names列:提取开头的连续字母
dat_cleaned <- dat %>%
  mutate(names = str_extract(names, "^[A-Za-z]+"))

# 查看结果
dat_cleaned

代码说明

  • str_extract(names, "^[A-Za-z]+"):用正则表达式匹配并提取目标内容
    • ^:匹配字符串的起始位置
    • [A-Za-z]:匹配任意大小写英文字母
    • +:表示匹配前面的字符(字母)一次或多次,确保提取完整的起始名称

处理后得到的结果如下:

namesvalue
John1
George2
Mary3

这个方法效率足够处理10万行的数据,无需担心性能问题。

内容的提问来源于stack exchange,提问作者Homer Jay Simpson

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 02:20:36