Если заявление в R с указанием даты - PullRequest
0 голосов
/ 28 марта 2019

Мне нужно создать дополнительный столбец в моем наборе данных, который отображает «1», если столбец (V1) в данной строке отображает дату до 25.07.17, и «2», если отображается тот же столбец (V1) дата после 25.07.17.

Код ниже создал столбец «Набор данных», как я хочу, но каждая строка - это «2» - даже те строки, для которых V1 следует после 25.07.17.

#add column to identify dataset
if(CombineddatainprogresscsvClean$V1<25.07.17 10:00){
  CombineddatainprogresscsvClean$Dataset=1
}else
{
    CombineddatainprogresscsvClean$Dataset=2
}

Можете ли вы сказать мне, где я иду не так? Спасибо.

Ответы [ 2 ]

1 голос
/ 28 марта 2019

Если время (час) также должно быть учтено, вы должны использовать:

CombineddatainprogresscsvClean$Dataset <- ifelse(as.POSIXct(CombineddatainprogresscsvClean$V1,format = '%d.%m.%y %H:%M') < as.POSIXct('25.07.17 10:00', format = '%d.%m.%y %H:%M'), 1, 2)
1 голос
/ 28 марта 2019

попробуйте

CombineddatainprogresscsvClean$Dataset <- ifelse(CombineddatainprogresscsvClean$V1 < as.Date("25.07.17", format = "%d.%m.%y"), 1, 2)

Для того, чтобы это работало, вам необходимо также преобразовать CombineddatainprogresscsvClean$V1 в формат даты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...