如何將以下字符變量轉換爲日期?將「2008年1月」轉換爲日期變量
strDates <- c("Jan.2008", "Feb.2008")
str(strDates)
chr [1:2] "Jan.2008" "Feb.2008"
dates <- as.Date(strDates, "%b %Y")
str(dates)
Date[1:2], format: NA NA
任何援助將不勝感激
如何將以下字符變量轉換爲日期?將「2008年1月」轉換爲日期變量
strDates <- c("Jan.2008", "Feb.2008")
str(strDates)
chr [1:2] "Jan.2008" "Feb.2008"
dates <- as.Date(strDates, "%b %Y")
str(dates)
Date[1:2], format: NA NA
任何援助將不勝感激
一個Date
需要一天元素一樣,所以你可以添加到輸入字符串paste
:
full.dates <- paste("01", strDates, sep = ".")
正確指定方案,包括分隔標記:
as.Date(full.dates, "%d.%b.%Y")
[1] "2008-01-01" "2008-02-01"
非常感謝 – MikeTP 2012-02-17 05:14:01
要形成有效的「日期」,您也需要一天的時間少了點,你的數據。所以我們加一個,我們只需使用任意一天的(這裏:每月的第一個):
R> strDates <- c("Jan.2008", "Feb.2008")
R> strptime(paste("01", strDates), "%d %b.%Y")
[1] "2008-01-01" "2008-02-01"
R>
非常感謝。 – MikeTP 2012-02-17 05:12:34
任何人都知道'lubridate'是否有任何轉換函數,假設在沒有日期字段的情況下「day = 1」? – 2012-02-17 13:25:15
如果你正在處理的幾個月並沒有真正日期,您可能會更好使用yearmon類定位d在動物園包中,在這種情況下,您不必首先處理當月的日子:'as.yearmon(strDates,「%b。%Y」)' – 2012-02-17 13:49:42