summaryrefslogtreecommitdiff
path: root/lib/overwrite.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/overwrite.rb')
-rw-r--r--lib/overwrite.rb13
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/overwrite.rb b/lib/overwrite.rb
index 4a79051..d0422ee 100644
--- a/lib/overwrite.rb
+++ b/lib/overwrite.rb
@@ -101,13 +101,13 @@ class Array
end
def mean
- self.inject{ |sum, el| sum + el }.to_f / self.size
+ self.compact.inject{ |sum, el| sum + el }.to_f / self.compact.size
end
def sample_variance
m = self.mean
- sum = self.inject(0){|accum, i| accum +(i-m)**2 }
- sum/(self.length - 1).to_f
+ sum = self.compact.inject(0){|accum, i| accum +(i-m)**2 }
+ sum/(self.compact.length - 1).to_f
end
def standard_deviation
@@ -123,6 +123,13 @@ class Array
end
end
+ def collect_with_index
+ result = []
+ self.each_with_index do |elt, idx|
+ result << yield(elt, idx)
+ end
+ result
+ end
end
module URI