我编写了一个 Shiny 的脚本,它在初始执行时加载 Rda 文件。该 Rda 文件由外部进程更新。如何在 Rda 文件更改时重新加载它,或者如何在特殊时间(例如每天早上 6 点)重新加载 .Rda 文件。
我想我可以将 reactiveTimer
函数和 if-clause 与 Sys.time()
一起使用,但我不知道如何操作。
非常感谢您的想法。
更新,感谢@jdarrison:
我尝试了函数 reactiveFileReader
,我的 server.R Skript 看起来像这样:
fileData <- reactiveFileReader(10000, session = NULL, filePath = "../data/myData.Rda", load)
shinyServer(function(input, output, session) {
output$mytable <- renderDataTable({
fileData()
myData # this is the name of the R-Object I loaded
})
})
不幸的是,我总是收到错误消息:找不到 mydata
如何使用reactiveFileReader
函数加载的数据?
最佳答案
一个解决方案非常简单:
只需添加 envir = .GlobalEnv
fileData <- reactiveFileReader(10000, session = NULL, filePath = "../data/myData.Rda", load, envir = .GlobalEnv)
关于R Shiny : reload a . Rda 文件在一天中的特殊时间 Shiny ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24628752/