我无法使用renderTable
。这是我得到的错误:
UseMethod(“xtable”)中的错误:“xtable”的适用方法没有应用于“character”类的对象
另外,我希望最终输出只有2列
#server.R
shinyServer(function(input, output) {
content_data <- renderTable({
ga$getData(id, start.date="2015-10-01", end.date=Sys.Date()-1,
metrics = "ga:pageViews",
dimensions = "ga:date, ga:day, ga:month, ga:year",
sort = "ga:date",
filter = paste0("ga:pagePath=@/tp", input$text))[,2:5]
})
output$table1 <- renderTable(content_data())
})
#ui.R
shinyUI(fluidPage(
textInput("text", label = h3("City"), value = "Enter city name..."),
hr(),
fluidRow(column(12, tableOutput("table1")))
))
答案 0 :(得分:0)
您在renderTable
内呼叫renderTable
。尝试使用此服务器功能:
shinyServer(function(input, output) {
output$table1 <- renderTable({
ga$getData(id, start.date="2015-10-01", end.date=Sys.Date()-1,
metrics = "ga:pageViews",
dimensions = "ga:date, ga:day, ga:month, ga:year",
sort = "ga:date",
filter = paste0("ga:pagePath=@/tp", input$text))[,2:5]
})
})
对于连接,您必须在renderTable
之前处理数据。这样的事情应该有效(下次请发布可重复的例子)。
shinyServer(function(input, output) {
content_data <- reactive({
df<-ga$getData(id, start.date="2015-10-01", end.date=Sys.Date()-1,
metrics = "ga:pageViews",
dimensions = "ga:date, ga:day, ga:month, ga:year",
sort = "ga:date")[,2:5]
#return concatenated 2-4 and 5
cbind(paste(df[2],df[3],df[4]),df[5])
})
output$table1 <- renderTable(content_data)
})