新年快乐!我本月正忙于撰写几篇篇幅较长的文章,敬请期待未来几周的文章。对于本月的“边角料”,我想简要介绍一个很棒的 R 库,我一直在使用它进行自我教育。
我的一位密友最近一直在用 R 语言进行黑客编程。我一直对此很感兴趣,并且一直在努力挤出一点时间来至少更多地了解 R 语言以及你可以用它做哪些事情。弄清楚数字处理能力对我来说是一个持续的挑战,因为我远不如我的朋友那样拥有出色的数学头脑。对我来说,这是一个缓慢的过程,但我一直在尝试将其与我在其他领域的经验联系起来,并且我开始考虑甚至非常简单的 Web 应用程序。
Shiny 是 RStudio 的一个工具包,它使创建 Web 应用程序变得更加容易。从 R 控制台轻松安装,只需一行代码,即可加载最新的稳定版本供您使用。这里有一个很棒的教程,它将引导您了解设置应用程序的概念,并在之前的课程基础上构建技能。Shiny 根据 GPLv3 许可获得许可,源代码可在 GitHub 上找到。
这是一个使用 Shiny 编写的简单的小型 Web 应用程序
library(shiny)
server <- function(input, output, session) {
observe({
myText <- paste("Value above is: ", input$textIn)
updateTextInput(session, "textOut", value=myText)
})
}
ui <- basicPage(
h3("My very own sample application!"),
textInput("textIn", "Input goes here, please."),
textInput("textOut", "Results will be printed in this box")
)
shinyApp(ui = ui, server = server)
当您在输入框中键入内容时,文本会在输出框中的前缀后复制。这没什么特别之处,但它向您展示了 Shiny 应用程序的基本结构。“服务器”部分允许您处理所有后端工作,例如计算、数据库检索或应用程序需要发生的任何其他事情。“UI”部分定义了界面,可以根据需要简单或复杂。
Shiny 中包含使用 Bootstrap 进行样式设置和显示主题的广泛功能,因此您可以在学习一点知识后,在 R 中为 Web 创建广泛的、功能丰富的应用程序。附加包可以将功能扩展到更高级的 JavaScript 应用程序、模板等等。
您可以通过多种方式处理 Shiny 的后端工作。如果您只是在本地运行您的应用程序,加载库即可解决问题。对于您想要发布到 Web 的应用程序,您可以在 RStudio 的 Shiny 网站上共享它们,运行 Shiny 服务器的开源版本,或者通过年度订阅服务从 RStudio 购买 Shiny Server Pro。
经验丰富的 R 大师可能已经了解 Shiny 的一切;它已经存在几年了。对于像我这样来自完全不同类型的编程并且想学习一点 R 语言的人来说,我发现它非常有用。
3 条评论