CommencezCommencez gratuitement

Ajuster un modèle pour prédire le nombre de locations de vélos

Dans cet exercice, vous allez construire un modèle pour prédire le nombre de vélos loués en une heure en fonction de la météo, du type de jour (jour férié, jour ouvrable ou fin de semaine) et de l'heure de la journée. Vous entraînerez le modèle sur les données du mois de juillet.

Le tableau de données comporte les colonnes :

  • cnt : le nombre de vélos loués durant cette heure (la variable cible)
  • hr : l'heure de la journée (0-23, de type factor)
  • holiday : TRUE/FALSE
  • workingday : TRUE si ce n'est ni un jour férié ni une fin de semaine, sinon FALSE
  • weathersit : catégorielle, "Clear to partly cloudy"/"Light Precipitation"/"Misty"
  • temp : température normalisée en Celsius
  • atemp : température « ressentie » normalisée en Celsius
  • hum : humidité normalisée
  • windspeed : vitesse du vent normalisée
  • instant : l'indice temporel — nombre d'heures depuis le début de l'ensemble de données (pas une variable)
  • mnth et yr : indices de mois et d'année (pas des variables)

N'oubliez pas que vous devez préciser family = poisson ou family = quasipoisson lorsque vous utilisez glm() (docs) pour ajuster un modèle de comptage.

Comme il y a beaucoup de variables d'entrée, par commodité nous indiquerons la cible et les entrées dans des variables, puis nous utiliserons paste() (docs) pour assembler une chaîne représentant la formule du modèle.

Le tableau bikesJuly est disponible. Les noms de la variable cible et des variables d'entrée ont aussi été chargés dans les variables outcome et vars, respectivement.

Cette activité fait partie du cours

Apprentissage supervisé en R : régression

Voir le cours

Instructions de l’exercice

  • Remplissez les champs vides pour créer la formule fmla exprimant cnt en fonction des entrées. Affichez-la.
  • Calculez la moyenne (mean()) et la variance (var()) de bikesJuly$cnt.
    • Devriez-vous utiliser une régression poisson ou quasipoisson ?
  • Utilisez glm() pour ajuster un modèle aux données bikesJuly : bike_model.
  • Utilisez glance() pour examiner les statistiques d'ajustement du modèle. Assignez la sortie de glance() à la variable perf.
  • Calculez le pseudo R-carré du modèle.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# bikesJuly is available
str(bikesJuly)

# The outcome column
outcome 

# The inputs to use
vars 

# Create the formula string for bikes rented as a function of the inputs
(fmla <- paste(___, "~", paste(___, collapse = " + ")))

# Calculate the mean and variance of the outcome
(mean_bikes <- ___)
(var_bikes <- ___)

# Fit the model
bike_model <- ___

# Call glance
(perf <- ___)

# Calculate pseudo-R-squared
(pseudoR2 <- ___)
Modifier et exécuter le code