當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R lubridate as_date 將對象轉換為日期或日期時間


將對象轉換為日期或日期時間

用法

as_date(x, ...)

# S4 method for ANY
as_date(x, ...)

# S4 method for POSIXt
as_date(x, tz = NULL)

# S4 method for numeric
as_date(x, origin = lubridate::origin)

# S4 method for character
as_date(x, tz = NULL, format = NULL)

as_datetime(x, ...)

# S4 method for ANY
as_datetime(x, tz = lubridate::tz(x))

# S4 method for POSIXt
as_datetime(x, tz = lubridate::tz(x))

# S4 method for numeric
as_datetime(x, origin = lubridate::origin, tz = "UTC")

# S4 method for character
as_datetime(x, tz = "UTC", format = NULL)

# S4 method for Date
as_datetime(x, tz = "UTC")

參數

x

POSIXt 、數字或字符對象的向量

...

要傳遞給特定方法的更多參數(見上文)。

tz

時區名稱(默認值:POSIXt 對象 x 的時區)。請參閱OlsonNames()

origin

Date 對象,或者可以被 as.Date(origin, ...) 強製轉換為此類對象的對象(默認值:"1970-01-01" 的 Unix 紀元)。請注意,在本例中,假設 x 反映自 origin"UTC" 以來的天數。

format

字符方法的格式參數。當提供的解析由 parse_date_time(x, orders = formats, exact = TRUE) 執行時。因此,多種格式被支持並被輪流嘗試。

x 對應的 Date 對象向量。

與基礎 R 比較

這些是 as.Date()as.POSIXct() 的替代品,並進行了一些調整以使它們更直觀地工作。

  • POSIXct 對象上調用時,as_date() 使用該對象的 tzone 屬性返回與該對象的打印表示形式指示的相同日期。這與 as.Date 不同,as.Date 忽略該屬性並僅使用 as.Date() 的 tz 參數(默認為 "UTC")。

  • 這兩個函數都為數值向量提供默認的原點參數。

  • 這兩個函數都會針對無效的日期格式生成 NA。有效格式是 ISO8601 標準說明的格式。警告消息將提供未轉換元素的計數。

  • as_datetime() 默認使用 UTC。

例子

dt_utc <- ymd_hms("2010-08-03 00:50:50")
dt_europe <- ymd_hms("2010-08-03 00:50:50", tz = "Europe/London")
c(as_date(dt_utc), as.Date(dt_utc))
#> [1] "2010-08-03" "2010-08-03"
c(as_date(dt_europe), as.Date(dt_europe))
#> [1] "2010-08-03" "2010-08-02"
## need not supply origin
as_date(10)
#> [1] "1970-01-11"
## Will replace invalid date format with NA
dt_wrong <- c("2009-09-29", "2012-11-29", "2015-29-12")
as_date(dt_wrong)
#> Warning:  1 failed to parse.
#> [1] "2009-09-29" "2012-11-29" NA          
源代碼:R/coercion.r

相關用法


注:本文由純淨天空篩選整理自Hadley Wickham等大神的英文原創作品 Convert an object to a date or date-time。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。