ruby - 使用 Ruby on Rails 计算 bool 值的平均值

标签 ruby algorithm average

我有一个设置,其中有 10 个属性接受 rails 形式的 float 。每个属性还与我的模型中的一个值相关联。如果在表单中为多个属性输入了一个数字,我需要创建一个加权平均值。

例如,如果我有 10 种产品,每种产品在我的模型中都有一个价格。在表单中,用户可以输入每种产品的数量(产品数量)。我想为那些输入了金额的产品计算加权价格。

那么我如何创建一个加权平均值来检查哪些产品输入了金额?

最佳答案

columns_names = ['a','b','c','d'] # array of name of the columns

obj = Model.find(:id) # find the object with id

# loop and get column values that are set

values = columns_names.inject([]) do |arr,column_name|
  arr << obj.column_name if params[column_name].eql?"true" # collect the values if the column set
  arr
end

#get average
if values.blank?
  # no column selected
else
  avg =  values.reduce(:+)/values.size
end

检查这个以获得加权平均的帮助

http://www.dzone.com/snippets/weighted-mean

关于ruby - 使用 Ruby on Rails 计算 bool 值的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12114167/

相关文章:

ruby - gem install nokogiri -v '1.6.3.1' on OS X 10.10 Yosemite 未安装

ruby-on-rails - Rails 教程 User.save

ruby-on-rails - 从 End_time (UTC) 中减去 Time.now 得到一个 float (hhmmss.xx)。如何将其格式化为 HH :MM so that I can use it for a countdown timer?

algorithm - 给定一个随机整数生成器 [0-5],生成 [0-7]

python - 如何在matplotlib中绘制平均线?

sql - 如何从 PostgreSQL 的表中找到值子集的平均值?

CUDA-如何对 block 进行平均?

ruby - Rubocop 规则在下一行进行赋值时强制双缩进

algorithm - 比较乘法

arrays - 有哪些跨时间压缩数据的好方法?