【发布时间】:2018-03-23 14:25:36
【问题描述】:
我搜索过但找不到这个,如果已经有人问过,请指点我一个答案。
我有三列。患者姓名,是否服用抗生素以及使用什么品牌的抗生素。但是,有时我在“抗生素”中有一个缺失值,但我在第三列中有注释告诉我他们没有得到抗生素,因为他们收到的品牌不算数。
df<-data.frame(Names=c("Patient1","patient2","Patient3","Patient4","patient5"),Antibiotics=c("Y","N","Y","","Y"), TypeAntibiotic=c("","","BrandA",,"BrandA",""))
如果第三栏有“BrandA”,我想有条件地填写“抗生素”中的空白。但是,如果“抗生素”中已经有东西,我不想这样做
我知道:
df%>%mutate(Antibiotics=ifelse(grepl("BrandA",TypeAntibiotic),"N",Antibiotics))
会在我想要的列中给我一个“N”,但我相信它会覆盖我已经在那里的任何“Y”。如果该行中还没有任何东西,我如何只在其中添加一个“N”?
【问题讨论】:
-
只需在
ifelse()的if部分添加另一个条件,用于查找空虚或您担心的任何其他问题。