我的数据框(“每日”)简化如下:
Day Spot
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:在==.default
(每日$ ring,c(“1”,“4”,“5”)):
较长的物体长度不是较短物体长度的倍数
或者我也试过,但没有尝试:
if (daily$ring==1 | daily$ring==4 | daily$ring==5){
daily$treatment <- "elevated"
} else {
daily$treatment <- "ambient"
}
我做错了什么? 感谢
答案 0 :(得分:2)
daily$treatment <- factor(ifelse(daily$Spot %in% c(1,4,5), "elevated", "ambient"))
daily
## Day Spot treatment
## 1 1 1 elevated
## 2 1 2 ambient
## 3 1 3 ambient
## 4 1 4 elevated
## 5 1 5 elevated
## 6 1 6 ambient