Добавление значений индикатора с использованием a для l oop в R - PullRequest
0 голосов
/ 05 мая 2020

Я относительно неопытен с R. У меня есть вектор истинных и ложных значений. Я хочу сделать эти числа c (т.е. 0 или 1). Я попытался написать это для l oop, но есть несколько синтаксических ошибок, которые я не знаю, как исправить.

indY <- rep(NA, nrow(dat)) # making an empty vector
# use for loop to fill each entry with either 0 or 1
for (i in 1:length(y)) {
  if newy[i] == TRUE:
    indY[i] == 1
  else:
    indY[i] == 0
}

Есть предложения? Спасибо.

Ответы [ 3 ]

4 голосов
/ 05 мая 2020

Это должно быть нормально:

as.numeric(y)

Предполагается, что y является вектором ИСТИНА и ЛОЖЬ.

3 голосов
/ 05 мая 2020

Для бонусных очков используйте +:

y <- c(TRUE, TRUE, FALSE, TRUE)
+y
#[1] 1 1 0 1

Это приводит y к numeri c и возвращает вектор.

1 голос
/ 05 мая 2020

Попробуйте:

df$y <- ifelse(df$y, 1, 0)
...