【发布时间】:2019-12-09 10:47:16
【问题描述】:
我创建了一个shiny app 用于分析某种类型的科学数据。简而言之,该程序的工作原理是分析用户提供的.csv 输入,该输入具有针对已知参考样本的基因表达数据,以识别实验中未知细胞的类型。
我可以在本地运行这个闪亮的应用程序没有问题,但是当我将它托管在 ShinyApps 服务器上时,绘图刷功能遇到错误,不会导致完全崩溃,而是提示红色错误消息并且无法输出表格摘要。
我查看了几个 SO 和 RStudio/Shiny 线程,发现由于文件编码的差异导致不同平台上的损坏而出现了类似的问题。这些话题对我没有帮助。
我尝试的一些东西可以在this、this 和this 链接中找到。
我尝试使用 UTF-8 编码重新保存我的 server.R 和 ui.R 文件以及输入的 .csv 文件,但没有成功。
有趣的是,我只在刷图上的某些项目时才观察到这个问题。在这里的示例图中,一些在刷CD4.CTRL.LN、T.4.LN.BDC、CD8.CTR.LN时破坏代码的X值。
x 的所有值均来自预分析,它们来自大型数据框。我看不到与有问题的数据点相关的任何特殊字符。
显示问题的日志对我来说相当神秘:
2019-07-31T20:39:56.688902+00:00 shinyapps[1053041]: Server version: 1.7.6-6
2019-07-31T20:39:56.688904+00:00 shinyapps[1053041]: LANG: en_US.UTF-8
2019-07-31T20:39:56.916208+00:00 shinyapps[1053041]: Using jsonlite for JSON processing
2019-07-31T20:39:56.688945+00:00 shinyapps[1053041]: R version: 3.5.3
2019-07-31T20:39:56.922032+00:00 shinyapps[1053041]:
2019-07-31T20:39:56.688946+00:00 shinyapps[1053041]: shiny version: 1.3.2
2019-07-31T20:39:56.922034+00:00 shinyapps[1053041]: Starting R with process ID: '23'
2019-07-31T20:39:56.688948+00:00 shinyapps[1053041]: httpuv version: 1.5.1
2019-07-31T20:39:56.688949+00:00 shinyapps[1053041]: rmarkdown version: (none)
2019-07-31T20:39:56.688966+00:00 shinyapps[1053041]: jsonlite version: 1.6
2019-07-31T20:39:56.688985+00:00 shinyapps[1053041]: RJSONIO version: (none)
2019-07-31T20:39:56.689180+00:00 shinyapps[1053041]: Using pandoc at /opt/connect/ext/pandoc2
2019-07-31T20:39:56.689013+00:00 shinyapps[1053041]: htmltools version: 0.3.6
2019-07-31T20:39:56.688965+00:00 shinyapps[1053041]: knitr version: (none)
2019-07-31T20:39:56.950579+00:00 shinyapps[1053041]:
2019-07-31T20:39:56.950581+00:00 shinyapps[1053041]: Listening on http://127.0.0.1:33950
....
Warning: Error in gsub: input string 1 is invalid in this locale
2019-07-31T20:43:38.699011+00:00 shinyapps[1053041]: 120: gsub
2019-07-31T20:43:38.699022+00:00 shinyapps[1053041]: 93: output$brushtop5
2019-07-31T20:43:38.699014+00:00 shinyapps[1053041]: 119: sanitize
2019-07-31T20:43:38.699051+00:00 shinyapps[1053041]: 13: runApp
2019-07-31T20:43:38.699015+00:00 shinyapps[1053041]: 118: print.xtable
2019-07-31T20:43:38.699053+00:00 shinyapps[1053041]: 12: fn
2019-07-31T20:43:38.699021+00:00 shinyapps[1053041]: 94: origRenderFunc
2019-07-31T20:43:38.699016+00:00 shinyapps[1053041]: 109: transform
2019-07-31T20:43:38.699055+00:00 shinyapps[1053041]: 7: connect$retry
2019-07-31T20:43:38.699017+00:00 shinyapps[1053041]: 108: func
2019-07-31T20:43:38.699056+00:00 shinyapps[1053041]: 6: eval
2019-07-31T20:43:38.699018+00:00 shinyapps[1053041]: 106: f
2019-07-31T20:43:38.699057+00:00 shinyapps[1053041]: 5: eval
2019-07-31T20:43:38.699019+00:00 shinyapps[1053041]: 105: Reduce
2019-07-31T20:43:38.699019+00:00 shinyapps[1053041]: 96: do
2019-07-31T20:43:38.699020+00:00 shinyapps[1053041]: 95: hybrid_chain
2019-07-31T20:43:39.087982+00:00 shinyapps[1053041]: 118: print.xtable
2019-07-31T20:43:39.087989+00:00 shinyapps[1053041]: 94: origRenderFunc
2019-07-31T20:43:39.087990+00:00 shinyapps[1053041]: 93: output$brushtop5
2019-07-31T20:43:39.087991+00:00 shinyapps[1053041]: 13: runApp
2019-07-31T20:43:39.087992+00:00 shinyapps[1053041]: 12: fn
2019-07-31T20:43:39.087984+00:00 shinyapps[1053041]: 108: func
2019-07-31T20:43:39.087994+00:00 shinyapps[1053041]: 7: connect$retry
2019-07-31T20:43:39.087986+00:00 shinyapps[1053041]: 105: Reduce
2019-07-31T20:43:39.088031+00:00 shinyapps[1053041]: 6: eval
2019-07-31T20:43:39.087987+00:00 shinyapps[1053041]: 96: do
2019-07-31T20:43:39.088034+00:00 shinyapps[1053041]: 5: eval
任何想法如何解决这个问题?谢谢!
【问题讨论】:
-
您能否将您的
server/ui代码缩减为一个最小的完整可验证示例,并包含一个包含一个正常行和一个异常行的小型 CSV? -
我花了一些时间来做一个reprex,当我准备把它添加到我的帖子中时,我发现了导致问题的原因。原来我在其中一个数据列(“ï”)中有一个非英文字符。我将在下面的新帖子中再用几句话进行解释。感谢您对问题的兴趣!
标签: r encoding shiny locale shinyapps