How can I do standard deviation in Ruby?

后端 未结 9 1594
一个人的身影
一个人的身影 2021-01-30 15:45

I have several records with a given attribute, and I want to find the standard deviation.

How do I do that?

9条回答
  •  渐次进展
    2021-01-30 16:41

    As a simple function, given a list of numbers:

    def standard_deviation(list)
      mean = list.inject(:+) / list.length.to_f
      var_sum = list.map{|n| (n-mean)**2}.inject(:+).to_f
      sample_variance = var_sum / (list.length - 1)
      Math.sqrt(sample_variance)
    end
    

提交回复
热议问题