假设数据狂df的品种来源列名称为"source",可以使用正则表达式来提取所有非汉字字符,然后使用paste函数将多个非汉字字符以顿号隔开,最后添加到新列"亲本"中。

代码如下:

library(stringr)
df$亲本 <- str_extract_all(df$source, "[^[:alnum:][:punct:]\\s]+") %>%
  lapply(function(x) paste(x, collapse = "、")) %>%
  unlist()

解释:

  • str_extract_all:使用正则表达式"[^[:alnum:][:punct:]\s]+"来提取所有非汉字字符,返回一个列表。
  • lapply:对列表中的每个元素应用paste函数,将多个非汉字字符以顿号隔开。
  • unlist:将列表转换为向量,作为新列"亲本"的值。

原文地址: https://www.cveoy.top/t/topic/b4Fw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录