Introduction à Shiny

Créer des applications web avec Shiny en R

Ramnath Vaidyanathan

VP of Product Research

Introduction à Shiny

Application web Shiny des temps d'attente avant l'éruption du geyser Old Faithful, avec nombre de classes de l'histogramme ajustable de façon interactive

Créer des applications web avec Shiny en R

Qu'est-ce qu'une application web ?

  • Se met à jour selon les entrées/interactions
  • Composée d'une UI et d'un serveur
Créer des applications web avec Shiny en R

Qu'est-ce qu'une application web ?

GIF de l'application web du NY Times « Paths to the White House »

  • Affiche les chemins vers la Maison-Blanche pour différents candidats à la présidence.
Créer des applications web avec Shiny en R

Qu'est-ce qu'une application web ?

  • Application mobile DataCamp

GIF de l'application mobile DataCamp, affichant un exemple de question d'entraînement.

Créer des applications web avec Shiny en R

Comment fonctionne une application web ?

Une application web se met à jour selon les entrées/interactions des utilisateur·rice·s Schéma montrant comment clients et serveurs se connectent pour alimenter les applications web sur Internet

Créer des applications web avec Shiny en R

Qu'est-ce que Shiny ?

Schéma « Qu'est-ce que Shiny », montrant que le code serveur et l'interface UI sont séparés mais coopèrent pour créer une application

Créer des applications web avec Shiny en R

Pourquoi les data scientists devraient-ils créer des applis web ?

Jeu de données Iris regroupé par sepal.length et sepal.width, formant 3 clusters distincts

Créer des applications web avec Shiny en R

Pourquoi les data scientists devraient-ils créer des applis web ?

plot_kmeans(
  data = iris, 
  x = 'Sepal.Length', 
  y = 'Sepal.Width', 
  nb_clusters = 3
)

Jeu de données Iris regroupé par sepal.length et sepal.width, formant 3 clusters distincts

Créer des applications web avec Shiny en R

Pourquoi les data scientists devraient-ils créer des applis web ?

library(shiny)
ui <- fluidPage(
  h1('K-Means Clustering App'),
  selectInput('x', 'Select x', names(iris), 'Sepal.Length'),
  selectInput('y', 'Select y', names(iris), 'Sepal.Width'),
  numericInput('nb_clusters', 'Select number of clusters', 3),
  plotly::plotlyOutput('kmeans_plot')
)

server <- function(input, output, session){
  output$kmeans_plot <- plotly::renderPlotly({
    plot_kmeans(iris, input$x, input$y, input$nb_clusters)
  })
}

shinyApp(ui = ui, server = server)
Créer des applications web avec Shiny en R

Pourquoi les data scientists devraient-ils créer des applis web ?

Application web qui réalise un clustering K-means sur le jeu de données Iris

Créer des applications web avec Shiny en R

Passons à la pratique !

Créer des applications web avec Shiny en R

Preparing Video For Download...