【发布时间】:2021-06-06 01:20:43
【问题描述】:
我有一个大数据框,其中一列“scientificName”有各种科学名称及其作者。其中一些名称是混合名称,由前面的“×”表示(注意这是乘法符号×,不是标准文本 x)。有些混血儿在名字的第一个词前面有符号,但我只对第二个词前面有符号的人感兴趣(例如“Rosa ×obtusa Ripart” 我想做的是通过“物种”列并删除第二个单词开头的所有符号,并将_x(纯文本“x”)附加到相同的end词,即。
Rosa ×obtusa Ripart -> Rosa obtusa_x Ripart
我开始了
df$scientificName[str_detect(df$scientificName, "×")]
但我一直在尝试只选择第二个单词,更不用说删除和添加字符了。
感谢您的任何帮助! 这里的玩具数据集(只需要修改第三个条目):
df <- data.frame(stuff=c("hybrids", "are", "annoying"), scientificName=c("×Conyzigeron huelsenii (Vatke) Rauschert","Viola wittrockiana Koppert", "Rosa ×obtusa Ripart"))
【问题讨论】: