gpt4 book ai didi

r - 部署时使用 unzip() 在 R Shiny 中解压缩文件失败

转载 作者:行者123 更新时间:2023-12-05 05:24:49 25 4
gpt4 key购买 nike

我想在我 Shiny 的应用程序的 www 文件夹中解压缩一个压缩的 .mdb 文件,查询它的数据,然后将其删除。 Unzip() 在我的本地机器上运行,但是当我在 shinyapps.io 上部署应用程序时,它在解压缩文件时出现问题。因为我无法read.table() 生成的文件(它是一个 .mdb),所以我认为 unz() 不会起作用。

这段代码在我的本地机器上运行时有效

服务器:

require(shiny)    

shinyServer(function(input, output) {

observeEvent(input$run,{ #Run Button

dbName=unzip('www/test.zip', list=T)
output$name=renderText({
paste(dbName[1])
})

db=unzip('www/ttt.zip', exdir='www', unzip=getOption("unzip"))
test1=read.csv(db) #.csv for simplicity, but my problem uses a .mdb
file.remove(db)

output$testcount=renderText({
paste(sum(test1))
})

})#/Run Button
})#/SS

界面:

shinyUI(
sidebarLayout(
sidebarPanel(width=3,

h5('ZIP test'),
p(align="left",
shiny::actionButton("run", label = "Run!")
),
textOutput(outputId = "name"),
textOutput(outputId = "testcount")
),

mainPanel(width=9,
plotOutput(outputId = "probs",height = "550px")
)
)
)

但上传到 Shinyapps.io 时失败。

知道我在这里做错了什么吗?我试过直接传递文件路径,并弄乱了 unzip= 选项,但无济于事。如果我删除第二个调用,它会告诉我名称就好了,但如果我尝试解压缩文件,它就会中断。

感谢任何帮助!

编辑

我能够通过删除 exdir='www', unzip=getOption("unzip") 并在根目录中查找文件来让它工作:test1=读取.csv('file1.csv')

最佳答案

我在 shiny-server 上使用 unzip(),每次调用该函数时,.zip 的内容都保存在应用程序的根目录中。我认为这是 shinyapps.io 的问题。

在文档中,您只能根据我阅读的内容使用“exdir”指定文件所在的位置。

关于r - 部署时使用 unzip() 在 R Shiny 中解压缩文件失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33225228/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com