शुरू करेंमुफ़्त में शुरू करें

Reactive contexts

Shiny में reactive values विशेष कॉन्स्ट्रक्ट होते हैं; R प्रोग्रामिंग में और कहीं नहीं मिलते. इसलिए इन्हें किसी भी R कोड में सीधे उपयोग नहीं किया जा सकता, reactive values केवल एक reactive context के भीतर ही एक्सेस की जा सकती हैं.

इसी कारण, किसी भी वैरिएबल को जो किसी reactive value पर निर्भर है, reactive() फंक्शन से ही बनाना चाहिए, नहीं तो त्रुटि मिलेगी. Shiny का server स्वयं reactive context नहीं है, लेकिन reactive() फंक्शन, observe() फंक्शन, और सभी render*() फंक्शन reactive context हैं.

यह अभ्यास पाठ्यक्रम का हिस्सा है

केस स्टडीज़: R में Shiny के साथ वेब एप्लिकेशन बनाना

पाठ्यक्रम देखें

अभ्यास निर्देश

आपको एक Shiny ऐप दिया गया है जिसमें दो numeric inputs, num1 और num2, और एक text output है. आपका कार्य:

  • my_sum नाम के reactive वैरिएबल में, दोनों numeric inputs का योग निकालें (पंक्ति 10).
  • my_average नाम के reactive वैरिएबल में, दोनों inputs का औसत निकालें (पंक्ति 14).
  • text output में, reactive वैरिएबल्स का उपयोग करके निकाला गया औसत दिखाएँ (पंक्ति 23).

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

ui <- fluidPage(
  numericInput("num1", "Number 1", 5),
  numericInput("num2", "Number 2", 10),
  textOutput("result")
)

server <- function(input, output) {
  # Calculate the sum of the inputs
  my_sum <- reactive({
    input$num1 + ___
  })

  # Calculate the average of the inputs
  my_average <- ___({
    my_sum() / 2
  })
  
  output$result <- renderText({
    paste(
      # Print the calculated sum
      "The sum is", my_sum(),
      # Print the calculated average
      "and the average is", ___
    )
  })
}

shinyApp(ui, server)
कोड संपादित करें और चलाएँ