【发布时间】:2019-05-08 04:11:45
【问题描述】:
这是一个简单的问题,但答案却花费了我更多的时间。我找到的最接近的答案是one。所以,我在这里 - 一如既往 - 寻求帮助!
假设我有一个包含 6 个变量 (y1-y6) 的数据集,我需要将地板之前的所有值替换为“NA”,并将天花板之后的所有值替换为“NA”。
会像下面这样:
为了明确我的问题,如果 变量 在地板和天花板之外,我需要将条目标记为 NA。也就是说,在下图的第二行,y1必须换成NA(因为地板是y2)和y6 也必须换成NA,因为上限是y5。
我是 dplyr 用户,如果答案使用 tidyverse 环境,我会很高兴。
一如既往的感谢!
ds <- data.frame(floor = c(1:2),
ceiling = c(4,5),
y1 = c(1,2),
y2 = c(1,2),
y3 = c(1,2),
y4 = c(1,2),
y5 = c(1,2),
y6 = rep(c(1,2),3))
【问题讨论】:
-
如果 值 在地板/天花板之外或如果 列索引 在地板/天花板?具体来说,如果列
y3的值1的行底为2,那么该值是否应该标记为NA?相反,如果列y1的值为3且行底为2,则该值是否应标记为NA? -
好问题!如果 variable 不是/不在地板和天花板之外,我正在尝试将条目标记为
NA。换句话说,在第二行中,y1必须替换为NA(因为地板是y2),y6也必须替换为NA,因为天花板是y5。我将编辑问题以使其清楚。 @马克彼得森
标签: r loops replace dplyr tidyverse