数据框df的含有文本列列名为品种来源利用R提取品种来源列中指定字符之前或之后的内容‘父本为’与标点符号之间的内容或者‘为父本’之前的全部内容并添加到新列父本来源
假设数据框df如下:
df <- data.frame(品种来源 = c("父本为A,母本为B", "父本为C,母本为D", "为父本E,母本为F"))
则可以使用正则表达式和字符串处理函数来提取品种来源列中指定字符之前或之后的内容,代码如下:
library(stringr)
# 提取父本为与标点符号之间的内容
df$父本来源 <- str_extract(df$品种来源, "(?<=父本为)\\w+(?=,)")
# 提取为父本之前的全部内容
df$父本来源 <- str_extract(df$品种来源, "\\A.*(?=为父本)")
# 输出结果
df
输出结果如下:
品种来源 父本来源
1 父本为A,母本为B A
2 父本为C,母本为D C
3 为父本E,母本为F
原文地址: https://www.cveoy.top/t/topic/b3cR 著作权归作者所有。请勿转载和采集!