У меня есть набор данных, который содержит простой столбец, состоящий из дат, например:
Dates
1 2012/04/10
2 2012/03/30
3 2012/03/24
4 2012/03/25
5 2012/04/10
6 2012/04/14
7 2012/04/21
Мой желаемый вывод такой:
Dates DateName
1 2012/04/10 April 2012
2 2015/03/30 March 2015
3 2011/03/24 March 2011
4 2016/12/25 December 2016
5 2014/06/10 June 2014
6 2014/05/14 May 2014
7 2018/07/21 August 2018
Для этого я использовал следующий код:
dt$Dates <- as.Date(dt$Dates)
dt$DateName <- format(dt$Dates,"%B %Y")
Хотя это работает нормально, моя новая колонка выходит из класса символов. Я буду sh, чтобы вместо этого выступать в качестве класса даты. Это потому, что я не могу отсортировать этот столбец по календарной дате. Скорее, он сортируется в алфавитном порядке.
Есть ли способ классифицировать или переклассифицировать мой новый формат даты в качестве какого-либо типа даты или класса каландра?
(I ' я не обязательно ищу решение base-R).
(Если возможно, я бы также предпочел оставить свой новый формат без изменений).
Я пробовал следующие строки кода и более, но они только возвращают ошибки.
dt$DateName <- format.Date(dt$Dates,"%B %Y")
dt$DateName <- format.POSIXlt(dt$Dates,"%B %Y")
dt$DateName <- format.difftime(dt$Dates,"%B %Y")
dt$DateName <- as.Date(dt$Dates, format ="%B %Y")