三个因子变量到一个因子变量

时间:2017-04-15 16:48:46

标签: r

我有三个因子变量的数据:MI,Ang,Stroke。我想让它们成为一个因子变量,CVD(是,否)。

应该是,基本上:

IF MI=="YES" or Ang=="YES" or Stroke=="YES" then CVD=="YES" else CVD=="NO"

但这显然不起作用。有什么建议?

谢谢!

@BWilliams得到了它

解决方案

CVD <- ifelse (MI=="YES" | Ang=="YES" | Stroke=="YES", "YES","NO")

2 个答案:

答案 0 :(得分:1)

我们可以使用rowSums来创建&#34; YES&#34; /&#34; NO&#34;变量

 df1$CVD <- c("NO", "YES")[(rowSums(df1=="YES")!=0)+1]

答案 1 :(得分:0)

不确定我是否正确解读,但我认为应该是这样:

if (any(Mi,Ang,Stroke)) {CVD <- T} else {CVD <- F}