如果在

时间:2016-06-24 08:35:25

标签: r

这可能很简单,但如果grep在另一列中匹配true,我想写一个新列。这是我的代码

ifelse(grepl("HALO|RFA|APC",Therap$ERPROCEDUREPERFORMED),Therap$RFA_EVENT=="RFA","nothing")

目前该列未被写入。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:3)

我们可以使用

Therap$RFA <- ifelse(grepl("HALO|RFA|APC",Therap$ERPROCEDUREPERFORMED),"RFA","nothing")

ifelse中,用法是

ifelse(test, yes, no)

并且test是逻辑条件。但是,在OP的帖子中,有两个合理的条件来测试&#39;并且&#39;是&#39;。我在猜测&#39; RFA&#39;作为价值。

修改 关于your other post

,我们可以继续嵌套其他条件
Therap$RFA <- ifelse(grepl("HALO|RFA|APC", Therap$ERPROCEDUREPERFORMED), "RFA",
                     ifelse(grepl("XX|YY|ZZZZ", Therap$ERPROCEDUREPERFORMED), "XYZ",
                           "nothing"))