После проверки условия необходимо добавить столбец и присвоить значение - PullRequest
0 голосов
/ 20 декабря 2018

У меня есть фрейм данных (final1) с несколькими столбцами

  for(i in final1$Total.Tyres)
  {
   if(final1$Total.Tyres[i] >= 500){
    final1$flag_tyres[i]<-1
   } else {
    final1$flag_tyres[i]<-0
   }
  }

Мне нужно проверить, не превышают ли шины 500, если это так, нужно назначить 1, добавив новый столбец flag_tyres, когда попытался, приведенный выше код даетмне ниже ошибка

 Error in if (final1$Total.Tyres[i] >= 500) { : 
  missing value where TRUE/FALSE needed

Ответы [ 2 ]

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

Простая ошибка, должна быть 1:length(final1$Total.Tyres) во внешнем цикле.Кроме того, вы можете векторизовать результат, как уже ответили.

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

Возможно, вы захотите векторизовать свой код вместо использования for для циклического перемещения по строкам, сохраняя при наборе текста, хлопот и быстрее:

final1$flag_tyres <- ifelse(final1$Total.Tyres >= 500, 1, 0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...