LoslegenKostenlos loslegen

Füge einen reaktiven Ausdruck hinzu

Ein reaktiver Ausdruck ist ein R-Ausdruck, der Widget-Eingaben nutzt und einen Wert zurückgibt. Der reaktive Ausdruck aktualisiert diesen Wert, sobald sich das zugrunde liegende Widget ändert. Reaktive Ausdrücke sind lazy und werden zwischengespeichert.

In dieser Übung kapselst du eine wiederholte Berechnung als reaktiven Ausdruck.

Diese Übung ist Teil des Kurses

Webanwendungen mit Shiny in R entwickeln

Kurs anzeigen

Anleitung zur Übung

  • Füge einen reaktiven Ausdruck namens rval_bmi hinzu, um den BMI zu berechnen.
  • Verwende diesen reaktiven Ausdruck, um die BMI-Berechnungen in beiden Ausgaben zu ersetzen.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

ui <- fluidPage(
  titlePanel('BMI Calculator'),
  sidebarLayout(
    sidebarPanel(
      numericInput('height', 'Enter your height in meters', 1.5, 1, 2),
      numericInput('weight', 'Enter your weight in Kilograms', 60, 45, 120)
    ),
    mainPanel(
      textOutput("bmi"),
      textOutput("bmi_range")
    )
  )
)

server <- function(input, output, session) {
  # CODE BELOW: Add a reactive expression rval_bmi to calculate BMI
  
  
  
  output$bmi <- renderText({
    # MODIFY CODE BELOW: Replace right-hand-side with reactive expression
    bmi <- input$weight/(input$height^2)
    paste("Your BMI is", round(bmi, 1))
  })
  output$bmi_range <- renderText({
    # MODIFY CODE BELOW: Replace right-hand-side with reactive expression
    bmi <- input$weight/(input$height^2)
    bmi_status <- cut(bmi, 
      breaks = c(0, 18.5, 24.9, 29.9, 40),
      labels = c('underweight', 'healthy', 'overweight', 'obese')
    )
    paste("You are", bmi_status)
  })
}

shinyApp(ui = ui, server = server)
Code bearbeiten und ausführen