【发布时间】:2017-10-30 23:14:11
【问题描述】:
我很抱歉我是 R 的新手。我尝试自己处理这个问题有一段时间了,但我想不通,但我相信它很容易解决。
我想做一些统计分析(例如线性回归),让用户通过matrixInput自己输入数据。
library(shiny)
library(shinyIncubat)
df <- data.frame(matrix(c("0","0"), 1, 2))
colnames(df) <- c("x", "y")
ui <- pageWithSidebar(
headerPanel('Enter data (x,y) here'),
sidebarPanel(
matrixInput('foo', 'Foo', data=df)
),
mainPanel(
verbatimTextOutput(outputId = "linreg")
)
))
server <- function(input,output) {
lm1 <- reactive({lm(y~x,data=input$foo)})
output$linreg <- renderPrint({summary(lm1())})
}
shinyApp(ui = ui, server = server)
我收到一个错误:“数据”必须是 data.frame,而不是矩阵或数组
【问题讨论】:
-
你可以试试
lm1 <- reactive({lm(y~x, data=as.data.frame(input$foo))})
标签: r shiny regression