Update data science solution

So this is a lot of tests for invalid arguments. At least see if you can abstract the `args = ` stuff into a method so that the tests are easier to read.