Class: Array

Inherits:
Object show all
Defined in:
lib/overwrite.rb

Instance Method Summary collapse

Instance Method Details

#meanObject



103
104
105
# File 'lib/overwrite.rb', line 103

def mean
  self.inject{ |sum, el| sum + el }.to_f / self.size
end

#medianObject



97
98
99
100
101
# File 'lib/overwrite.rb', line 97

def median
  sorted = self.sort
  len = sorted.length
  (sorted[(len - 1) / 2] + sorted[len / 2]) / 2.0
end

#sample_varianceObject



107
108
109
110
111
# File 'lib/overwrite.rb', line 107

def sample_variance
  m = self.mean
  sum = self.inject(0){|accum, i| accum +(i-m)**2 }
  sum/(self.length - 1).to_f
end

#standard_deviationObject



113
114
115
# File 'lib/overwrite.rb', line 113

def standard_deviation
  Math.sqrt(self.sample_variance)
end

#sum_sizeInteger

Sum up the size of single arrays in an array of arrays

Parameters:

  • Array (Array)

    of arrays

Returns:

  • (Integer)

    Sum of size of array elements



80
81
82
83
84
85
86
87
88
# File 'lib/overwrite.rb', line 80

def sum_size
  self.inject(0) { |s,a|
    if a.respond_to?('size')
      s+=a.size
    else
      internal_server_error "No size available: #{a.inspect}"
    end
  }
end

#zero_variance?Boolean

For symbolic features

Parameters:

  • Array (Array)

    to test.

Returns:

  • (Boolean)

    Whether the array has just one unique value.



93
94
95
# File 'lib/overwrite.rb', line 93

def zero_variance?
  return self.uniq.size == 1
end