我有一组内置数据。目标是从两个RadioButton中读取两列的名称,然后从所选列中创建一个DataFrame。我在这里做了这个可重复的例子。
如果你运行
output$mytable = renderDataTable(vector1)
或
output$mytable = renderDataTable(vector2)
另外,您会发现每个observeEvents都正常工作但我已经卡住了,我无法将这些列放在一起。
P.S.1。我知道最后两行会出错,因为最初没有vector1
和vector2
。因此,我把#做出评论。
P.S.2。我需要在另一个地方使用结果数据框。这就是为什么我坚持要形成一个数据框架。
library(shiny)
vchoices <- 1:ncol(mtcars)
names(vchoices) <- names(mtcars)
runApp(list(
ui = basicPage(
h2('The mtcars data'),
radioButtons(
"column1",
"select columns",
choices = vchoices,
inline = T
),
radioButtons(
"column2",
"select columns",
choices = vchoices,
inline = T
),
dataTableOutput('mytable')
),
server = function(input, output) {
observeEvent(input$column1, {
cols1 <- as.numeric(input$column1)
vector1 <- data.frame(mtcars[, cols1])
names(vector1) <- c("Firstcolumn")
#output$mytable = renderDataTable(vector1)
})
observeEvent(input$column2, {
cols2 <- as.numeric(input$column2)
vector2 <- data.frame(mtcars[, cols2])
names(vector2) <- c("Firstcolumn")
#output$mytable = renderDataTable(vector2)
})
#z <- cbind(vector1, vector2)
#output$mytable = renderDataTable(z)
}
))
答案 0 :(得分:0)
如果您想分两步完成,可以使用UV Tile
:
reactive