我有一个数据库,里面有以下信息:
Patient_number | Arterial_thrombosis | Venous_thrombosis |
1 Yes No
2 No Yes
我希望创建一个名为"Any_thrombosis“的新变量,如果Arterial_thrombosis和/或Venous_thrombosis之一等于"Yes”,则该变量为"Yes“;如果两者均为No,则该变量为"No”。
我已经尝试过了:
dataframe %>% mutate(Any_thrombosis = ifelse(Arterial_thrombosis == "Yes" | Venous_thrombosis == "Yes"), 'Yes', 'No')
但是我得到了这个错误:
Error: Problem with `mutate()` input `Any_thrombosis`.
x argument "yes" is missing, with no default
i Input `Any_thrombosis` is `ifelse(Arterial_thrombosis == "Yes" | Venous_thrombosis == "Yes")`
任何帮助都是非常感谢的!
发布于 2020-10-12 14:53:45
我会通过检查两个条件都是no first的肯定情况来表达您的逻辑,并将no赋值给本例中的新列。否则,如果不为真,则意味着这两列中至少有一列是yes。
在基数R中:
dataframe$Any_thrombosis <-
ifelse(dataframe$Arterial_thrombosis == "No" &
dataframe$Venous_thrombosis == "No", "No", "Yes")
发布于 2020-10-12 15:03:07
下面的答案是:
> transform(df, Any_thrombosis = ifelse((Arterial_thrombosis == 'Yes') | (Venous_thrombosis == 'Yes'), 'Yes','No'))
Patient_number Arterial_thrombosis Venous_thrombosis Any_thrombosis
1 1 Yes No Yes
2 2 No Yes Yes
>
https://stackoverflow.com/questions/64320131
复制相似问题