【发布时间】:2020-04-29 20:45:31
【问题描述】:
我有一个带有物种名称的数据集,其中一些最初使用的名称现在已经过时,因此它们被标注为“old_species***retired*** use new_species”,而正确的单元格只标注为“new_species”。以下是数据样本:
df<- data.frame(species=c("Etheostoma spectabile","Ictalurus furcatus","Micropterus salmoides","Micropterus salmoides","Ictalurus punctatus","Ictalurus punctatus","Ictalurus punctatus","Micropterus salmoides","Etheostoma olmstedi","Noturus insignis","Lepomis auritus","Lepomis auritus","Nocomis leptocephalus","Scartomyzon rupiscartes***retired***use Moxostoma rupiscartes","Lepomis cyanellus","Notropis chlorocephalus","Scartomyzon cervinus***retired***use Moxostoma cervinum","Ictalurus punctatus","Lythrurus ardens","Moxostoma pappillosum","Micropterus salmoides","Micropterus salmoides","Ictalurus punctatus"))
我试过了
sapply(strsplit(df$species, split='***retired***use', fixed = T),function(x) (x[2])))
但数据正确的单元格返回 NA,因为它们不包含拆分。 有没有办法只为实际包含它的单元格进行拆分?
【问题讨论】: