我需要根据下面R编程代码中所述的条件,将变量“TRTCD1”中的值分配为两个不同的类,分别为1和2。
z$Treatment1.class<-with(z, ifelse(TRTCD1 == 0 & TRTCD1 == 40, 1,
ifelse(TRTCD1 >= 10 & TRTCD1 <= 30 & TRTCD1 == 50, 2)))
运行这些代码时,我收到错误:
缺少参数“否”,没有默认值
这里,Treatment1.class
是表z
中的一个新变量,它保存了类的输出。
如何解决此问题?
答案 0 :(得分:3)
我的猜测如下。
ifelse(TRTCD1 == 0 & TRTCD1 == 40,
1,
ifelse(TRTCD1 >= 10 & TRTCD1 <= 30 & TRTCD1 == 50, 2, *value if NO*)
)
仅给出第二个ifelse为TRUE的情况。
答案 1 :(得分:0)
此错误表明缺少else语句,应将其写为:
z$Treatment1.class<-with(z, ifelse(TRTCD1 == 0 & TRTCD1 == 40, 1,
ifelse(TRTCD1 >= 10 & TRTCD1 <= 30 & TRTCD1 == 50, 2,<else code here>)))