2014-11-11 5 views
-2
> date<-as.character(date) 
> head(date) 
[1] "14-Jan" "14-Jan" "14-Jan" "14-Jan" "14-Jan" "14-Jan" 
> date1<-as.Date(date,format="%y-%b") 
> head(date1) 
[1] NA NA NA NA NA NA 

Я хочу преобразовать формат даты в формат, чтобы я мог делать расширяемые данные временных рядов.конвертировать на дату с R

+1

вам может добавить день, например 'as.Date (« 14-Jan-01 »,«% y-% b-% d »)' – sckott

+0

> as.Date («14-янв.», формат = «% y-% b-% d») [1] NA > as.Date ("14-Jan", format = "% y-% b") [1] NA все еще не может – user3566160

+0

hmmm, вы ничего в этом не изменили :) – sckott

ответ

0

Как упоминает Скотт, вам может потребоваться добавить значение дня. Вот еще один способ с paste (принимает на себя 1-й день месяца для всех записей):

date <- as.character(c("14-Jan", "14-Jan", "14-Jan", "14-Jan", "14-Jan", "14-Jan")) 
date1 <- as.Date(paste0(date, "-1"),format="%y-%b-%d") 
head(date1) 
#[1] "2014-01-01" "2014-01-01" "2014-01-01" "2014-01-01" "2014-01-01" "2014-01-01" 

вы могли бы вернуться к отображению в формате год-месяц следующим образом:

format(date1, format="%y-%b") 
#[1] "14-Jan" "14-Jan" "14-Jan" "14-Jan" "14-Jan" "14-Jan" 
+0

Вы можете использовать 'substr' для вырезания дня:' date1 <- substr (as.Date (paste0 (date, "-1"), format = "% y-% b-% d"), 1,7) ' – mrp

Смежные вопросы