如何在R中使用tidyverse删除名称字段中sp.后的第二个空格
R tidyverse字符串清洗:删除sp.后尾随空格的方案
核心思路
使用tidyverse生态下stringr包的str_replace()函数,通过正则匹配定位sp.后的空格并直接删除。
完整实现代码
# 加载tidyverse library(tidyverse) # 构造示例数据 df <- data.frame(x = c("Araceae sp. 22", "Arecaceae sp. 02")) # 执行字符串清洗 df_clean <- df %>% mutate(x = str_replace(string = x, pattern = "sp\\.\\s", replacement = "sp.")) # 查看清洗结果 print(df_clean)
结果输出
x 1 Araceae sp.22 2 Arecaceae sp.02
规则说明
正则匹配规则sp\\.\\s中:
\\.为转义字符,用于匹配真实的英文句号,避免.被识别为正则通配符\\s匹配sp.之后的1个空格- 匹配到的内容直接替换为
sp.即可删除尾随空格,不影响其他位置的空格
内容的提问来源于stack exchange,提问作者Anh
相关产品推荐
相关产品推荐

