谁来写 table 使用 Shiny 输入
Who to write a table using a Shiny input
您好,以下代码 returns 出现错误,应用程序崩溃。错误指的是“你试图做一些只能从反应式表达式或观察者内部完成的事情”。
library(shiny)
ui <- fluidPage(
theme = "",
titlePanel(""),
sidebarPanel(textInput("freetext", "Write Something")),
mainPanel(textOutput("testtext"))
)
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
table <- data.frame(wrote = input$freetext)
write.csv(table, "~/testtable.csv", row.names = FALSE)
}
shinyApp(ui, server)
我尝试将 input$freetext 添加到响应式元素中,但没有成功。
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
outtext <- reactive({input$freetext})
table <- data.frame(wrote = outtext())
write.csv(table, "~/testtable.csv", row.names = FALSE)
}
如何将 input$freetext 的值添加到 data.frame?
答案:这有效
library(shiny)
ui <- fluidPage(
theme = "",
titlePanel(""),
sidebarPanel(textInput("freetext", "Write Something")),
mainPanel(textOutput("testtext"))
)
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
observeEvent(input$freetext, {
if(nchar(input$freetext) > 0) {
t <-input$freetext
table <- data.frame(wrote = t)
write.csv(table, "/shiny-data/users/scotcan1/testApp/testtable.csv", row.names = FALSE)
}
})
}
shinyApp(ui, server)
我发现这个很管用。
library(shiny)
ui <- fluidPage(
theme = "",
titlePanel(""),
sidebarPanel(textInput("freetext", "Write Something")),
mainPanel(textOutput("testtext"))
)
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
observeEvent(input$freetext, {
if(nchar(input$freetext) > 0) {
t <-input$freetext
table <- data.frame(wrote = t)
write.csv(table, "/shiny-data/users/scotcan1/testApp/testtable.csv", row.names = FALSE)
}
})
}
shinyApp(ui, server)
您好,以下代码 returns 出现错误,应用程序崩溃。错误指的是“你试图做一些只能从反应式表达式或观察者内部完成的事情”。
library(shiny)
ui <- fluidPage(
theme = "",
titlePanel(""),
sidebarPanel(textInput("freetext", "Write Something")),
mainPanel(textOutput("testtext"))
)
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
table <- data.frame(wrote = input$freetext)
write.csv(table, "~/testtable.csv", row.names = FALSE)
}
shinyApp(ui, server)
我尝试将 input$freetext 添加到响应式元素中,但没有成功。
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
outtext <- reactive({input$freetext})
table <- data.frame(wrote = outtext())
write.csv(table, "~/testtable.csv", row.names = FALSE)
}
如何将 input$freetext 的值添加到 data.frame?
答案:这有效
library(shiny)
ui <- fluidPage(
theme = "",
titlePanel(""),
sidebarPanel(textInput("freetext", "Write Something")),
mainPanel(textOutput("testtext"))
)
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
observeEvent(input$freetext, {
if(nchar(input$freetext) > 0) {
t <-input$freetext
table <- data.frame(wrote = t)
write.csv(table, "/shiny-data/users/scotcan1/testApp/testtable.csv", row.names = FALSE)
}
})
}
shinyApp(ui, server)
我发现这个很管用。
library(shiny)
ui <- fluidPage(
theme = "",
titlePanel(""),
sidebarPanel(textInput("freetext", "Write Something")),
mainPanel(textOutput("testtext"))
)
server <- function(input, output) {
output$testtext <- renderText(paste("I wrote: ", input$freetext))
observeEvent(input$freetext, {
if(nchar(input$freetext) > 0) {
t <-input$freetext
table <- data.frame(wrote = t)
write.csv(table, "/shiny-data/users/scotcan1/testApp/testtable.csv", row.names = FALSE)
}
})
}
shinyApp(ui, server)