Заменить несколько столбцов на отсутствующие в зависимости от значения другого столбца - PullRequest
0 голосов
/ 11 декабря 2018

Мне нужен эффективный способ заменить значения многих столбцов на NA, если они больше, чем значения другого столбца.

Например: заменить все значения в столбцах height1:height5 на NA если эти значения >height6

set.seed(1)

# example data
N <- 200
data <- data.frame(id = 1:N,
               height1 = rnorm(N,50:60),
               height2 = rnorm(N,60:70),
               height3 = rnorm(N,70:80),
               height4 = rnorm(N,80:90),
               height5 = rnorm(N,90:100),
               height6 = rnorm(N,60:110))

1 Ответ

0 голосов
/ 11 декабря 2018

Используя dplyr вы можете сделать

data %>% mutate_at(
   vars(height1:height5),
   ~ifelse(.x > data$height6, NA, .x)
   )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...