簡體   English   中英

將字符日期格式轉換為 R 日期

[英]Convert Character Date format to R Date

我有像“Feb-20”這樣的字符格式的數據。 我需要將其轉換為 '2020-02-29' R 日期格式。 代碼應該是通用的,可以轉換任何月份並返回月份的最后一天。

repmonth  <- 'Feb-20'

我們可以使用strptime

   strptime('Feb-20',format="%b-%d", tz="UTC")

[1] "2020-02-20 UTC"

或者像@Neem Kamal 建議的那樣使用lubridate

lubridate::ymd(paste0("2020-","Feb-20"))

編輯

要返回該月的最后一天:

lubridate::ceiling_date(strptime('Feb-20',format="%b-%d", tz="UTC"),"month") -1
[1] "2020-02-29 23:59:59 UTC"

也適用於三月:

lubridate::ceiling_date(strptime('Mar-20',format="%b-%d", tz="UTC"),"month") -1
[1] "2020-03-31 23:59:59 UTC"

缺點:它也返回時間。

29是固定的嗎? 您可以使用潤滑 package:

lubridate::myd(paste0('Feb-20','-29'))

這里是 go,

library(lubridate)
repmonth  <- 'Feb-20'
rollback(ymd(paste0("2020-",repmonth) ) + month(1), roll_to_first = F)

以上將給出您正在尋找的內容。 每月的最后一天,無論是否是閏年。

暫無
暫無

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

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