58
задан 13 August 2019 в 16:05

2 ответа

Это - больше совета, чем определенный ответ, но мое предложение состоит в том, чтобы преобразовать даты, чтобы сразу датировать переменные, вместо того, чтобы сохранить их как строки. Таким образом, можно использовать дату (и время) функции на них, вместо того, чтобы пытаться использовать очень неприятные обходные решения.

, Как указано, lubridate пакет имеет хорошие функции извлечения.

Для некоторых проектов, я нашел, что соединение дат из запуска полезно: создайте год, месяц, день (месяца) и день (недели) переменные для запуска с. Это может упростить сводки, таблицы и графики, потому что код извлечения является отдельным от сводной/таблицы/графика кода, и потому что, если необходимо изменить его, Вы не должны развертывать те изменения в нескольких местах.

2
ответ дан 1 November 2019 в 13:05

Если Вы используете date пакет , это может быть сделано довольно легко.

library(date)
Date <- c("01/01/2009", "01/01/2010", "01/01/2011", "01/01/2012")
Date <- as.date(Date)
Date
# [1] 1Jan2009 1Jan2010 1Jan2011 1Jan2012
date.mdy(Date)$year
# [1] 2009 2010 2011 2012

## be aware that these are now integers and thus different methods may be invoked:
str(date.mdy(Date)$year)
# int [1:4] 2009 2010 2011 2012
summary(Date)
#     First      Last   
# "1Jan2009" "1Jan2012" 
summary(date.mdy(Date)$year)
#    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
#    2009    2010    2010    2010    2011    2012 
1
ответ дан 1 November 2019 в 13:05

Другие вопросы по тегам:

Похожие вопросы: