我想通过从现有列'a'中减去值'z'来创建新列'b'。但是,如果列'a'中的值为0,我想保留它们为0.列中的条件替换 - R
我尝试了以下创建新列y的内容,然后要求编译器更改如果它们的值与0-z相同,则新列返回到0。
我似乎无法得到这个,因为我得到一个错误信息
"Error in `$<-.data.frame`(`*tmp*`, "b", value = c(66, 69, 71, 72, 66, :
replacement has 55 rows, data has 16"
在这里工作是我的数据:
a
11
14
16
17
11
5
0
0
0
0
0
5
7
13
15
17
这里是我的代码:
z <- -55
data$y <- (0 - z)
data$b <- (data$a - z)
data$b[data$y]<- 0
plot(data$b)
+1对'z * as.logical(data $ a)',美。 – zx8754