code: public static Vec toNumericVec(Vec src) {
      switch (src.get_type()) {
        case Vec.T_CAT:
          return categoricalToInt(src);
        case Vec.T_STR:
          return stringToNumeric(src);
        case Vec.T_NUM:
        case Vec.T_TIME:
        case Vec.T_UUID:
          return src.makeCopy(null, Vec.T_NUM);
        default:
          throw new H2OIllegalArgumentException("Unrecognized column type " + src.get_type_str()
              + " given to toNumericVec()");
      }
    }
docs: Create a new {@link Vec} of numeric values from an existing {@link Vec}.
  
  This method accepts all {@link Vec} types as input. The original Vec is not mutated.
  
  If src is a categorical {@link Vec}, a copy is returned.
  
  If src is a string {@link Vec}, all values that can be are parsed into reals or integers, and all
  others become NA. See stringToNumeric for parsing details.
  
  If src is a numeric {@link Vec}, a copy is made.
  
  If src is a time {@link Vec}, the milliseconds since the epoch are used to populate the new Vec.
  
  If src is a UUID {@link Vec}, the existing numeric storage is used to populate the new Vec.
  
  Throws H2OIllegalArgumentException() if the resulting domain exceeds
  Categorical.MAX_CATEGORICAL_COUNT.
  
  @param src A {@link Vec} whose values will be used as the basis for a new numeric {@link Vec}
  @return the resulting numeric {@link Vec}