簡體   English   中英

R-在data.frame中轉換日期

[英]R - converting dates within data.frame

我正在使用以下data.frame提供的“ data.frame ”:2017年8月12日。

class(data[,1]) = factor

如何將它們轉換為日期?

data[,1] <- as.Date.factor(data[,1],format = "%m.%d.%y") ,返回NA

我建議使用lubridate軟件包,因為它非常易於使用,可以與日期一起使用。 例如:

mdy("Aug 12,2017")
[1] "2017-08-12"

如果日期為YYYY-MM-DD格式,則可以使用ymd函數。 還有其他功能,例如dmydmy_hms (用於日期時間)等。

如果您的列名為my.date ,則可以執行以下操作:

data$my.date <- mdy(data$my.date)

另外,您可以使用magrittr%<>%運算符來使代碼更短:

data$my.date %<>% mdy

as.POSIXct (Base-R解決方案):

as.POSIXct("Aug 12,2017", format="%b%d,%Y")

輸出:

[1] "2017-08-12 CEST"

使用strptime ,可以工作:

strptime("Aug 12,2017", "%b%d,%Y")

輸出:

[1] "2017-08-12 UTC"

strptime的第二個參數是日期的格式。 例如,如果您的日期類似於"1/5/2005" ,則格式為:

format="%m/%d/%Y"

希望能幫助到你

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM