Session Ready
Exercise

Throwing errors with bad arguments

If a user provides a bad input to a function, the best course of action is to throw an error letting them know. The two rules are

  1. Throw the error message as soon as you realize there is a problem (typically at the start of the function).
  2. Make the error message easily understandable.

You can use the assert_*() functions from assertive to check inputs and throw errors when they fail.

Instructions
100 XP
  • Add a line to the body of calc_harmonic_mean() to assert that x is numeric.
  • Look at what happens when you pass a character argument to calc_harmonic_mean().