【发布时间】:2021-12-06 17:42:47
【问题描述】:
我有一个数据框,其中一个字段包含地理名称或短语 (locality.curated),以及一个包含这些地区缩写代码的相应字段(转换),但并非所有缩写都已填写,有些是 NA。我想通过匹配 locality.curated 中的关键字来为转换字段添加缩写,但如果转换字段已被占用,则不要覆盖它。
即: 如果 convert = NA AND locality curated = "Delaware" 然后将 "USA" 粘贴到 curated。
我尝试了 ifelse 和 if 的各种排列,但要么无法正确使用语法,要么就像我在下面的最新尝试一样,似乎没有修改数据框。
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))
非常感谢!
【问题讨论】:
标签: r if-statement conditional-statements