could just call the `check_data_number_type` method her instead of calling it in the initializer. that method could also be renamed and the result memoized
your call