def gmean(x) prod=1.0 x.each {|v| prod *= v} prod**(1.0/x.size) end data = [1.1,2.3,3.3,1.2,4.5,2.1,6.6 ] gm = gmean(data) # 2.508411474