我有一个包含地理名称或短语(locality.curated)的字段的dataframe,还有一个对应的字段,其中包含了这些区域的缩写代码(转换),但是并不是所有的缩略语都被填充,有些是NA。我希望通过与locality.curated中的关键字匹配来添加转换字段的缩写,但如果转换字段已被占用,则不要覆盖它。
如果转换= NA和本地策划人=“特拉华州”,然后粘贴“美国”为策划人。
我已经尝试过各种ifelse的排列,但是如果不能正确的语法,或者,就像我下面的最新尝试一样,似乎没有修改dataframe。
if(is.na(test$convert) && grepl("Delaware", test$locality.curated, value=T)) {paste("USA", test$convert)}虚拟数据,输入:
test <- data.frame(locality.curated=c("Canada to Delaware River", "California", "Delaware", "Wilmington Delaware", "Alaska"), convert=c("CAN","USA", "USA",NA,NA))期望产出:
test.out <- data.frame(locality.curated=c("Canada to Delaware River", "California", "Delaware", "Wilmington Delaware", "Alaska"), convert=c("CAN","USA", "USA","USA",NA))非常感谢!
发布于 2021-10-19 20:01:36
test$new <- ifelse(is.na(test$convert) & grepl(pattern = "Delaware", x = test$locality.curated),
yes = "USA",
no = test$convert)
1 Canada to Delaware River CAN CAN
2 California USA USA
3 Delaware USA USA
4 Wilmington Delaware <NA> USA
5 Alaska <NA> <NA>https://stackoverflow.com/questions/69636894
复制相似问题