2013-01-03 69 views
2

我試圖將我的數據框中的日期從yyyy-mm-dd轉換爲dd-mm-yyyy格式。例如:將yyyy-mm-dd轉換爲dd-mm-yyyy

D <- "06.12.2012" 
as.Date(D, "%d.%m.%Y") 
D 

回報:

"2012-12-06" 

我怎樣才能將其轉換爲 「2012年6月12日」?

回答

17

一)解析

d <- as.Date("06.12.2012", "%d.%m.%Y") 

B)格式

strftime(d, "%m-%d-%Y") 

format(d, "%m-%d-%Y") 
+0

@Dirk:想你的意思'strftime'或'format' –

+1

是啊,卻得到了叫走參加會議。可怕的生活有時如此inteesres與如此:) –

8

嚴格地說,你不能。 A Date是一個整數(從1970-01-01開始的天數),打印時看起來像字符串。 Date對象的打印格式爲YYYY-MM-DD,因爲這是ISO-8601標準。

正如在聊天中提到@GSee,你會喜歡的東西,重新定義了print.Date方法:

print.Date <- function(x, max=NULL, ...) { 
    if (is.null(max)) 
    max <- getOption("max.print", 9999L) 
    if (max < length(x)) { 
    print(format(x[seq_len(max)], "%d-%m-%Y"), max = max, ...) 
    cat(" [ reached getOption(\"max.print\") -- omitted", 
     length(x) - max, "entries ]\n") 
    } 
    else print(format(x, "%d-%m-%Y"), max = max, ...) 
    invisible(x) 
} 
相關問題