Ruby 组合多个数组/哈希选择
我有以下代码:Ruby 组合多个数组/哈希选择,ruby,arrays,hash,Ruby,Arrays,Hash,我有以下代码: sum = array_of_hashes.select{ |key| (date_range).include? Date.parse(key[:created])}.map { |h| h[:amount] }.sum size = array_of_hashes.select{ |key| (date_range).include? Date.parse(key[:created])}.size total = sum / size sum选择日期在日期范围内的所有哈希
sum = array_of_hashes.select{ |key| (date_range).include? Date.parse(key[:created])}.map { |h| h[:amount] }.sum
size = array_of_hashes.select{ |key| (date_range).include? Date.parse(key[:created])}.size
total = sum / size
sum
选择日期在日期范围内的所有哈希值,并将:amount
键的所有值相加
size
统计日期范围内的哈希数
total
将总和
除以大小
我怎样才能把它们结合起来,使它不再是三个独立的项目呢?我认为它很简单:
selected = array_of_hashes.select { ... }
avarage = selected.map { ... }.sum / selected.size
注意:对日期范围使用
include?
效率很低,因为它需要遍历整个日期范围,我建议改用cover?
。我认为它非常简单:
selected = array_of_hashes.select { ... }
avarage = selected.map { ... }.sum / selected.size
注意:对日期范围使用
include?
效率很低,因为它需要遍历整个日期范围,我建议改用cover?
。我认为它非常简单:
selected = array_of_hashes.select { ... }
avarage = selected.map { ... }.sum / selected.size
注意:对日期范围使用
include?
效率很低,因为它需要遍历整个日期范围,我建议改用cover?
。我认为它非常简单:
selected = array_of_hashes.select { ... }
avarage = selected.map { ... }.sum / selected.size
注意:对日期范围使用
include?
效率很低,因为它需要遍历整个日期范围,我建议改用cover?
。确实没有更紧凑的方法。一个备选方案可以是:
average = (selected = array_of_hashes.select { ... }.map { ... }).sum/selected.size.to_f
真的没有什么好方法可以让它更紧凑。一个备选方案可以是:
average = (selected = array_of_hashes.select { ... }.map { ... }).sum/selected.size.to_f
真的没有什么好方法可以让它更紧凑。一个备选方案可以是:
average = (selected = array_of_hashes.select { ... }.map { ... }).sum/selected.size.to_f
真的没有什么好方法可以让它更紧凑。一个备选方案可以是:
average = (selected = array_of_hashes.select { ... }.map { ... }).sum/selected.size.to_f
你知道在一行中实现这一点的方法吗(即使它牺牲了一点可读性)?为什么你想在一行中实现它?询问是否可能。我相信你做不到,别担心。不过,我很好奇这是否能做到。@sawa没什么可遗憾的!:-)<代码>封面?和
包含?
在端点为大小为1的数字或字符串时的行为几乎相同,在任何其他情况下包含?
调用可枚举#包含?
。在中,您可以找到更多信息。@sawa是的,C中的rb\u call\u super
大致上是Ruby中的super
。您知道在一行中实现这一点的方法吗(即使它牺牲了一点可读性)?为什么要在一行中使用它?询问是否可能。我相信你做不到,别担心。不过,我很好奇这是否能做到。@sawa没什么可遗憾的!:-)<代码>封面?
和包含?
在端点为大小为1的数字或字符串时的行为几乎相同,在任何其他情况下包含?
调用可枚举#包含?
。在中,您可以找到更多信息。@sawa是的,C中的rb\u call\u super
大致上是Ruby中的super
。您知道在一行中实现这一点的方法吗(即使它牺牲了一点可读性)?为什么要在一行中使用它?询问是否可能。我相信你做不到,别担心。不过,我很好奇这是否能做到。@sawa没什么可遗憾的!:-)<代码>封面?
和包含?
在端点为大小为1的数字或字符串时的行为几乎相同,在任何其他情况下包含?
调用可枚举#包含?
。在中,您可以找到更多信息。@sawa是的,C中的rb\u call\u super
大致上是Ruby中的super
。您知道在一行中实现这一点的方法吗(即使它牺牲了一点可读性)?为什么要在一行中使用它?询问是否可能。我相信你做不到,别担心。不过,我很好奇这是否能做到。@sawa没什么可遗憾的!:-)<代码>封面?
和包含?
在端点为大小为1的数字或字符串时的行为几乎相同,在任何其他情况下包含?
调用可枚举#包含?
。在中,您可以找到更多信息。@sawayes,C中的rb\u call\u super
大约是Ruby中的super
。