def reject_values(*values)
      resultant_pos = size.times.to_a - values.flat_map { |v| @cat_hash[v] }
      dv = at(*resultant_pos)
      unless dv.is_a? Daru::Vector
        pos = resultant_pos.first
        dv = at(pos..pos)
      end
      dv.remove_unused_categories
    end
Return a vector with specified values removed
@param [Array] values to reject from resultant vector
@return [Daru::Vector] vector with specified values removed
@example
dv = Daru::Vector.new [1, 2, nil, Float::NAN], type: :category
dv.reject_values nil, Float::NAN
# => #<Daru::Vector(2)>
#   0   1
#   1   2