【发布时间】:2013-11-11 10:44:00
【问题描述】:
尝试创建如下所示的数据框;
X Y
20 30
使用 textInput 创建数据框。
但是在文本区域中输入的值没有正确分配给数据框。
你能帮帮我吗?
ui.R
library(shiny)
shinyUI(pageWithSidebar(
headerPanel( "", ""),
sidebarPanel(
wellPanel(
textInput('datavalues', "variable values",""),
actionButton("submit","Apply")
)
),
mainPanel(
verbatimTextOutput('datatable')
)
))
服务器.R
library(shiny)
shinyServer(function(input,output,session){
data1= reactive({
if(input$submit!=0){
isolate({
data.frame(paste(input$datavalues))
})
}
})
output$datatable<-renderPrint(function(){
if(!is.null(data1())){
d<-data1()
print(d)
}
})
})
【问题讨论】:
-
您需要像解析任何其他文本正文一样解析文本字段中的数据。对于初学者,请尝试将静态文件中的数据读入 data.frame。一旦你开始工作,然后尝试将其合并到 Shiny 中。特别是,请查看 read.csv 或 read.table 函数以使用表格文本创建 data.frames。
-
我试过 data.frame(eval(parse(input$datavalues)))。但它不起作用。
-
是的。查看
read.table()的文档。您可以通过输入命令?read.table将其拉起。这就是您要使用的功能。您甚至可能会发现read.table("yourFileName.txt")会立即生效。然后你可以开始研究如何使用文本字符串而不是文件。 -
我不想使用现有文件。只是我想使用闪亮的文本输入创建一个只有一行的数据集。
标签: r shiny shiny-server