Yaşam beklentisine göre filtrele
Shiny kullanmanın asıl faydası, girdilerin çıktılarla birlikte kullanıldığında ortaya çıkar. Son egzersizde oluşturduğumuz tablo statikti—değiştirilemiyordu—ama keşif yapmak için kullanıcının hangi veri alt kümesini görmek istediğine karar vermesi daha iyi olurdu.
Bunu, kullanıcıya veriyi filtrelemek için bir değer seçtiren bir girdi ekleyerek başarabilirsin. Böylece, önceki egzersizde oluşturduğumuz tabloyu dinamik hale getirebiliriz.
gapminder veri kümesindeki değişkenlerden biri lifeExp (yaşam beklentisi). Görevin, kullanıcıya minimum ve maksimum yaşam beklentisini seçtiren bir kaydırıcı girdi eklemek ve tablonun yalnızca bu değerlere uyan verileri göstermesini sağlamak.
Bu egzersiz
Vaka Çalışmaları: R ile Shiny Kullanarak Web Uygulamaları Geliştirme
kursunun bir parçasıdırEgzersiz talimatları
- UI'a ID'si "life" olan, minimum değeri 0, maksimum değeri 120 ve varsayılan seçimi 30-50 olan bir kaydırıcı girdi ekle.
- render fonksiyonunun içinde,
gapminderverisini yalnızcalifeExpdeğeri minimum ve maksimum değerler arasında (uç değerler dahil) olan kayıtlarla sınırlamak için girdi değerini kullan.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
ui <- fluidPage(
h1("Gapminder"),
# Add a slider for life expectancy filter
___(inputId = ___, label = "Life expectancy",
min = ___, max = ___,
value = c(30, 50)),
tableOutput("table")
)
server <- function(input, output) {
output$table <- renderTable({
data <- gapminder
data <- subset(
data,
# Use the life expectancy input to filter the data
lifeExp >= ___life[1] & lifeExp <= ___life[2]
)
data
})
}
shinyApp(ui, server)