Я очень новичок в R, и это моя первая попытка Shiny, поэтому, пожалуйста, простите, что может быть очевидным исправлением.Попытка извлечь определенную строку из таблицы данных в приложении Shiny
У меня есть следующий кадр данных:
ID Bet.Total Point.Total Cash.Value
1 2000 5,741.00 43,264.00 61.81
2 2001 10,009.70 90,087.00 128.70
3 2002 10,875.06 97,177.00 138.82
4 2003 5,754.04 43,658.00 62.37
5 2004 5,771.00 43,860.00 62.66
6 2005 5,097.70 38,743.00 55.35
7 2006 1,605.45 59,402.00 84.86
8 2007 7,430.43 55,995.00 79.99
9 2008 20,960.50 188,645.00 269.49
10 2009 10,626.80 92,209.00 131.73
11 2010 42,711.50 384,404.00 549.15
Я пытаюсь создать глянцевое приложение, в котором пользователь может выбрать свой идентификатор и приложение возвращает их Bet.Total, Point.Total, и наличные деньги .Стоимость.
Вот мой ui.R код:
library(shiny)
shinyUI(fluidPage(
titlePanel("Bet Rewards Calculator"),
fluidRow(
column(3,
selectizeInput("ID", choices = "ID",
label = h4("Rewards ID")),
br(),
actionButton("submit", "Submit")),
column(7, offset = 2,
DT::dataTableOutput("betReport")))
)
)
А вот мой server.R код: библиотеки (DT)
betReport <- read.csv("BetReport.csv")
shinyServer(function(input, output) {
observeEvent(input$submit)
output$x1 <- DT::renderDataTable({betReport})
# print the selected indices
output$x2 = renderPrint({
s = input$ID_rows_selected
if (length(s)) {
cat("This is your balance.")
cat(s, sep = ",")
}
})
})
Я пробовал различные перестановки серверного кода из простой и сложный, чтобы вернуть только соответствующую строку данных, без успеха. Когда я запускаю этот конкретный код, сбои приложения, и я получаю следующее сообщение об ошибке:
Error in exprToFunction(handlerExpr, handler.env, handler.quoted) : argument "expr_sub" is missing, with no default
Любые мысли/предложения будут высоко оценены!
Есть целый ряд вопросов. В 'server.R' появляются' x1', 'x2' и' ID_rows_selected', которые не отображаются в 'ui.R'. Выход 'betReport' не определен. Неясно, где пользователь может выбрать свой идентификатор, так как аргумент 'choice'' selectInput' имеет только одно значение. – nicola