0

我正在尝试将治疗标签分配给我的实验 ID。SO 帮助我走到了这一步,但现在我不确定为什么我的代码不起作用。id 是数字(作为因子输入(colname 是 plotF)),处理是 A、B 和 C。数据框非常大,这是一个示例。

data$trt[data$plotF == c(12, 21, 35, 43)] <- "A"
data$trt[data$plotF == c(15, 23, 32, 41)] <- "B"
data$trt[data$plotF == c(13, 24, 31, 46)] <- "C"

输出是:

plotF  trt
21 <NA>
24    C
46 <NA>
12 <NA>
23 <NA>
31 <NA>
13 <NA>
43    A
32 <NA>
15 <NA>
35    A
41    B
24 <NA>
46 <NA>
32    B
31 <NA>
13    C
21    A
12 <NA>
43    A
23 <NA>
15 <NA>
41 <NA>
35 <NA>

为什么它有时会起作用,但并非总是如此?

4

1 回答 1

2

如果您替换==%in%以下内容,会发生什么?

data$trt[data$plotF %in% c(12, 21, 35, 43)] <- "A"
data$trt[data$plotF %in% c(15, 23, 32, 41)] <- "B"
data$trt[data$plotF %in% c(13, 24, 31, 46)] <- "C"
于 2012-07-27T17:57:48.890 回答