2
ymd
from lubridate,默認值tz
是UTC
。我不知道確切的更改時間,但我知道在1.5版本中默認值是UTC,但是在1.5.8版本中,默認值現在是NULL
。如何處理lubridate的默認值ymd
這改變的ymd
從POSIXct
對象Date
對象,打破了很多我的代碼,我靠有POSIXct
對象的輸出,但是現在有一個Date
。有沒有一種方便的方法來實現向後兼容,還是我需要將tz='UTC'
添加到所有依賴於此的舊代碼?
是的,我認爲有關使包裝等'ymd2 <-function(x)的YMD(X,TZ = 'UTC' )'但是我希望在不使用'ymd'的每一段代碼中都這樣做。 –
那麼你可以命名包裝器'ymd',然後用裏面的'tz'參數調用'lubridate :: ymd',以避免名稱衝突...然後你不必在現有代碼中替換所有'ymd'調用,只需加載該功能即可。否則,您可能會使用舊版本的'lubridate'卡住。在這種情況下'packrat'包可能會有用。 – mikeck
您還可以發佈功能請求以在'options'中獲得默認的tz選項:https://github.com/tidyverse/lubridate/issues。我懷疑你是唯一有這個版本兼容性問題的人。 – mikeck