有人可以解釋一下R中的“extdata”是什么意思嗎?
例如,我正在查看 R 中的“cronR”庫(用于自動調度作業),并遇到了術語“extdata”:
f <- system.file(package = "cronR", "extdata", "helloworld.R")
cmd <- cron_rscript(f)
cmd
cron_add(command = cmd, frequency = 'minutely',
id = 'test1', description = 'My process 1', tags = c('lab', 'xyz'))
cron_add(command = cmd, frequency = 'daily', at='7AM', id = 'test2')
cron_njobs()
cron_ls()
cron_clear(ask=TRUE)
cron_ls()
同樣,“taskscheduleR”包(也用于自動調度作業)也參考了“extdata”:
library(taskscheduleR)
myscript <- system.file("extdata", "helloworld.R", package = "taskscheduleR")
## run script once within 62 seconds
taskscheduler_create(taskname = "myfancyscript", rscript = myscript,
schedule = "ONCE", starttime = format(Sys.time() 62, "%H:%M"))
我的問題:有人可以解釋什么是“extdata”嗎?這只是需要添加到“system.file()”命令中的一些“形式”嗎?有人可以在這里解釋它的相關性嗎?
謝謝!
參考:
- https://cran.r-project.org/web/packages/cronR/cronR.pdf
- https://cran.r-project.org/web/packages/taskscheduleR/vignettes/taskscheduleR.html
uj5u.com熱心網友回復:
這是一個約定,而不是一個正式定義的術語。(但是,這是由包作者定義并在包結構中編碼的約定;除非您自己弄亂包結構,否則您無法更改它。)“extdata”可能是“外部資料”的縮寫。
但是,這并不意味著您在構建自己的代碼時需要使用“extdata”;只有在查找包中包含的檔案時才需要它。 cron_rscript("~/my_cron_jobs/foo.R")應該可以正常作業(前提是您實際上有一些東西,并且~== 主目錄快捷方式可以跨作業系統作業,我認為確實如此)。
system.file()接受一個package引數,否則將它的引數串成一個檔案路徑;即system.file(package = "cronR", "extdata", "helloworld.R")意味著
- 查看 R 為包設定的系統檔案夾
cronR(在我的情況下是/usr/local/lib/R/site-library/cronR,但精確位置會因作業系統和配置而異) - 在該檔案夾中查看
extdata檔案夾 - 在該檔案夾中尋找
helloworld.R
因此,在我的情況下,此命令將參考/usr/local/lib/R/site-library/cronR/extdata/helloworld.R.
由于“/”作為所有當前作業系統的路徑分隔符(至少在 R 中使用時),你會得到相同的結果 system.file(package="cronR", "extdata/helloworld.R")
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/420117.html
標籤:
下一篇:用r中特定列欄位的插值替換NA
