日期格式(1)
正如你先前所見,R 讀取日期時相當嚴格。提醒你一下,as.Date("09/28/2008") 會丟出錯誤,因為格式不正確。解法是透過 format 參數明確指定你使用的格式:
as.Date("09/28/2008", format = "%m / %d / %Y")
[1] "2008-09-29"
這看起來也許有點奇怪,但重點是:你定義一個字元向量,告訴 R 你的日期是 mm/dd/yyyy 的形式。接著它就知道如何擷取各個部分,並轉換成 yyyy-mm-dd。
你可以指定多種不同的格式,以下是幾個常見的:
%Y:4 位數年份(1982)%y:2 位數年份(82)%m:2 位數月份(01)%d:2 位數日期(13)%A:星期幾(Wednesday)%a:縮寫的星期幾(Wed)%B:月份(January)%b:縮寫的月份(Jan)
本練習屬於課程
R 金融中級
練習說明
在這個練習中,你將使用日期「1930-08-30」,也就是華倫・巴菲特的生日!
- 使用
as.Date()與合適的格式,將"08,30,1930"轉成日期(其形式為「month,day,year」)。 - 使用
as.Date()與合適的格式,將"Aug 30,1930"轉成日期。 - 使用
as.Date()與合適的格式,將"30aug1930"轉成日期。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# "08,30,30"
as.Date("08,30,1930", format = ___)
# "Aug 30,1930"
as.Date("Aug 30,1930", format = ___)
# "30aug1930"
as.Date("30aug1930", format = ___)