1
私はいくつかの助けが必要です。私はシャイニーの世界では初心者で、非常に基本的なものかもしれません。ここに私のui.Rとserver.Rコードは、私がrunApp()を実行するとShinyのバイナリ演算子に数値以外の引数
shinyUI(
pageWithSidebar(
headerPanel("Hello Shiny R..."),
sidebarPanel(
sliderInput(inputId="age", label="Age", min=1, max=99, value=24, step=1, animate=TRUE),
numericInput(inputId="height", label="Height (cm)", min=0, max=300, value=160, step=5),
numericInput(inputId="weight", label="Weight (kg)", min=0, max=500, value=100, step=5),
radioButtons(inputId="gender", label="Gender", choices=c("Male", "Female"), selected="Male", inline=TRUE),
textInput(inputId="name", label="Full Name"),
submitButton(text="Apply")
),
mainPanel(
h1("BMI Calculator"),
p("Name:"),
textOutput("name"),
p("Age:"),
textOutput("age"),
p("Gender:"),
textOutput("gender"),
p("BMI:"),
textOutput("bmi")
)
)
)
shinyServer(
function(input, output) {
output$name <- renderText({input$name})
output$age <- renderText({input$age})
output$gender <- renderText({input$gender})
weight <- renderText({as.numeric(input$weight)})
height <- renderText({as.numeric(input$height)})
output$bmi <- weight/(height * height)
}
)
が、ここで私が取得しています何です:OK
Error in height * height : non-numeric argument to binary operator
'renderText'には何も問題はありませんが、あなたはそれを見ています。あたかも数字であるかのように計算しようとしています。そうではありません。 'class(renderText({}))'を試してみると、型が 'function'であることがわかります。 –
はい、それはそれを説明します。それを出力$ bmi < - renderText({input $ weight/input $ height * input $ height})のように使用すると、私のために解決されました。 おかげで仲間... –