正如標題所說:爲什麼沒有這樣的功能?或者以不同的方式:函數的類型是什麼?當我輸入?update
時,我從stats
包中得到了一些東西,但第7頁上有here所述的潤溼功能。似乎還有lubridate:::update.Date
函數,但我找不到該函數的任何解釋。爲什麼沒有lubridate :::更新功能?
Backround:我在包中使用該函數,並且在我使用描述文件中的Depends:
之後我才使用它。起初,我想用lubridate::update()
...
正如標題所說:爲什麼沒有這樣的功能?或者以不同的方式:函數的類型是什麼?當我輸入?update
時,我從stats
包中得到了一些東西,但第7頁上有here所述的潤溼功能。似乎還有lubridate:::update.Date
函數,但我找不到該函數的任何解釋。爲什麼沒有lubridate :::更新功能?
Backround:我在包中使用該函數,並且在我使用描述文件中的Depends:
之後我才使用它。起初,我想用lubridate::update()
...
lubridate
包提供了方法lubridate:::update.Date()
和lubridate:::update.POSIXt()
。這些函數不會被導出到命名空間中,但是我假設通過函數重載,當加載血管庫時,將update()
應用於POSIX
或Date
對象時調用它們。
幫助頁面?lubridate:::update.POSIXt
提供了有關lubridate
包內update
功能的一些信息:
說明
update.Date和update.POSIXt返回一個日期與指定 元素更新。未指定的元素將保持不變。 update.Date和update.POSIXt不會將指定的值添加到 現有日期,它們會將它們替換爲 現有日期的適當部分。
用法
## S3類 'POSIXt'
更新(對象,...,簡單= FALSE)
的使用部分和在實施例中的方法幫助頁面指示這些函數不需要單獨解決,因爲在加載lubridate
庫時,只需使用update()
即可調用這些函數。
檢查這些功能可以在控制檯中輸入,例如lubridate:::update.POSIXt
(無需傳遞參數,也沒有括號)。
您需要加載lubridate包:
library(lubridate)
date <- now()
print(date)
new_date <- update(date, year = 2010, month = 1, day = 1)
print(new_date)
輸出:
「2016年8月4日8時58分08秒CEST」
「2010-01-01 08:58:08 CET」
所以包含通過DESCRIPTION文件和'依賴'在我的軟件包lubridate是好的?之後我可以使用'update(...)'這就是你應該使用函數的方式嗎?爲什麼我總是得到參考'stats :: update'並且沒有任何來自base的東西? – Christoph
我沒有開發R包的經驗,所以我不知道包含在DESCRIPTION文件中是否足夠。如果你特別想調用這些函數,可以用'lubridate ::: update.POSIXt()'來處理它們。 'stats'包是R中標準分發的一部分,所以它通常被稱爲「基本」庫,雖然有一個單獨的核心庫叫做'base'。可以認爲'stats :: update()'是可用的。如果看起來像lubridate,利用函數重載/ ad hoc多態性,'stats :: update()'應該足夠庫(lubridate)後, – RHertel