From: mame@... Date: 2019-02-06T13:04:52+00:00 Subject: [ruby-core:91429] [Ruby trunk Feature#11076] Enumerable method count_by Issue #11076 has been updated by mame (Yusuke Endoh). baweaver (Brandon Weaver) wrote: > Answer 2: The transformed value, like `group_by`: > > ```ruby > [1, 2, 3].group_by(&:even?) > => {false=>[1, 3], true=>[2]} > > [1, 2, 3].tally_by(&:even?) > => {false => 2, true => 1} > ``` If we have `tally`, we can implement this behavior easily: `[1, 2, 3].map {|x| x.even? }.tally`. Is a new method really needed just for a shorthand of this behavior? ---------------------------------------- Feature #11076: Enumerable method count_by https://bugs.ruby-lang.org/issues/11076#change-76688 * Author: haraldb (Harald B��ttiger) * Status: Open * Priority: Normal * Assignee: * Target version: ---------------------------------------- I very often use `Hash[array.group_by{|x|x}.map{|x,y|[x,y.size]}]`. Would be nice with to have a method called `count_by`: ~~~ruby array = ['aa', 'aA', 'bb', 'cc'] p array.count_by(&:downcase) #=> {'aa'=>2,'bb'=>1,'cc'=>1} ~~~ -- https://bugs.ruby-lang.org/ Unsubscribe: