class TimeArray::GroupHash
Public Instance Methods
count(options={})
click to toggle source
# File lib/time_array/group_hash.rb, line 22 def count(options={}) if options[:values] raise ArgumentError, "Option not recognized" if !%w(positive negative non_positive non_negative non_zero zero all).include?(options[:values].to_s) each_pair{|k,v| self[k]=v.send("count_"+options[:values])} else each_pair{|k,v| self[k]=v.count_all} end end
sum(options={})
click to toggle source
# File lib/time_array/group_hash.rb, line 3 def sum(options={}) if options[:values] case options[:values] when :positive, :non_negative each_pair{|k,v| self[k]=v.sum_positive} when :negative, :non_positive each_pair{|k,v| self[k]=v.sum_negative} when :zero each_pair{|k,v| self[k]=0.0} when :all, :non_zero each_pair{|k,v| self[k]=v.sum_all} else raise ArgumentError, "Option not recognized" end else each_pair{|k,v| self[k]=v.sum_all} end end