De functie warning()

Defensief programmeren in R

Dr. Colin Gillespie

Jumping Rivers

De waarschuwing

De functie warning()

warning("You have been warned!")
# Warning message:
# You have been warned!
  • geeft aan dat er iets mis kan zijn gegaan
  • R gaat door (anders dan bij een error)
  • "Warning message:" wordt (vooraf) toegevoegd
Defensief programmeren in R

Waarschuwingen onderdrukken

Net als berichten kun je waarschuwingen onderdrukken met

  • suppressWarnings()

Dit is bijna nooit een goed idee

  • Los het onderliggende probleem op!
Defensief programmeren in R

Wanneer gebruik je een waarschuwing?

Foto door Austin Chan

Defensief programmeren in R

Een goed gebruik van warning

Stel, we doen regressie op

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

Dus x2 = x1 + 1

Als we een multiple lineair regressiemodel fitten

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
Defensief programmeren in R

Jij bent aan de beurt

Defensief programmeren in R

Preparing Video For Download...