La fonction warning()

Programmation R défensive

Dr. Colin Gillespie

Jumping Rivers

Le message d'avertissement

La fonction warning()

warning("You have been warned!")
# Warning message:
# You have been warned!
  • signale qu'un problème pourrait survenir
  • R continue l'exécution (contrairement à une erreur)
  • « Warning message: » est ajouté (en préfixe/suffixe)
Programmation R défensive

Masquer les avertissements

Comme pour les messages, vous pouvez masquer les avertissements avec

  • suppressWarnings()`

C'est presque toujours une mauvaise idée

  • Corrigez plutôt la cause du problème !
Programmation R défensive

Quand utiliser un avertissement ?

Photo : Austin Chan

Programmation R défensive

Un bon usage d'un avertissement

Supposons que nous effectuions une régression sur

d = data.frame(y = 1:4, x1 = 1:4)
d$x2 = d$x1 + 1

Donc x2 = x1 + 1

Lorsque nous ajustons un modèle de régression linéaire multiple

m = lm(y ~ x1 + x2, data = d)
summary(m)
# Some output removed 
# Warning message:
# In summary.lm(m) : essentially perfect fit: summary may be unreliable
Programmation R défensive

À vous de jouer

Programmation R défensive

Preparing Video For Download...