我有一个简化如下的数据框(“每日”):
日点
1 1
1 2
1 3
1 4
1 5
1 6
我想要一个新列,治疗,其元素应该是因素“环境”(点 2、3、6)和“升高”(点 1、4、5)。我试过这个:
daily$treatment<- factor(ifelse(daily$ring==c("1","4","5"), "elevated", "ambient"))
但它返回了这个警告,结果不是我需要的:警告消息:1:在 is.na(e1) | is.na(e2) : 较长的对象长度不是较短对象长度的倍数 2: In ==.default
(daily$ring, c("1", "4", "5")) : 较长的对象长度不是更短的对象长度或者我也尝试过,但没有:
if (daily$ring==1 | daily$ring==4 | daily$ring==5){
daily$treatment <- "elevated"
} else {
daily$treatment <- "ambient"
}
我究竟做错了什么?谢谢