Size Estimates by Name (Making Choices)

This is a follow up to Use and Modify.

To make it even easier to work with your dinosaur size estimation functions you decide to create a function that lets you specify which dinosaur group you need to estimate the size of by name and then have the function automatically choose the right parameters.

Remember the general form of the equation is:

mass <- a * length ^ b

Create a new function get_mass_from_length_by_name() that takes two arguments, the length and the name of the dinosaur group. Inside this function use if/else if/else statements to check to see if the name is one of the following values and if so use the associated a and b values to estimate the species mass using these equations:

If the name is not any of these values the function should return NA.

Run the function for:

  1. A Stegosauria that is 10 meters long.
  2. A Theropoda that is 8 meters long.
  3. A Sauropoda that is 12 meters long.
  4. A Ankylosauria that is 13 meters long.

Challenge (optional): If the name is not one of values that have a and b values print out a message that it doesn’t know how to convert that group that includes that groups name in a message like “No known estimation for Ankylosauria”. (the function paste() will be helpful here). Doing this successfully will modify your answer to (4), which is fine.

Challenge (optional): Change your function so that it uses two different values of a and b for Stegosauria. When Stegosauria is greater than 8 meters long use the equation above. When it is less than 8 meters long use a = 8.5 and b = 2.8. Run the function for a Stegosauria that is 6 meters long.

Challenge (optional): Rewrite your function so that instead of calculating mass directly it sets the values of a and b to the values for the species (or to NA if the species doesn’t have an equation) and then calls another function to do the basic mass = a * length ^ b calculation.

Expected outputs for Size Estimates by Name: 1