def min_by(size=nil, &block)
            raise ArgumentError, 'Expected compulsory object block in min_by method' unless block_given?
            reject_values(*Daru::MISSING_VALUES).to_a.min_by(size, &block)
          end
Returns the minimum value(s) present in the vector, with a compulsory object block.

@param size [Integer] Number of minimum values to return. Defaults to nil.

@example

dv = Daru::Vector.new (["Tyrion", "Daenerys", "Jon Starkgaryen"]), index: Daru::Index.new([:t, :d, :j])
#=>
#   #<Daru::Vector(3)>
#       t   Tyrion
#       d   Daenerys
#       j   Jon Starkgaryen

dv.min_by(2) { |i| i.size }
#=> ["Tyrion","Daenerys"]