Xavier Noria wrote: > On Jan 21, 2008, at 12:23 PM, Max Williams wrote: > >> >> Can anyone tell me a nice and simple way of doing this? > > Enumerable#parition or Set#classify might help. > > -- fxn hmmm...i couldn't work out how to make it easier with either of those. I ended up doing this, which isn't very clever but it did seem to work. groups = [] vals = collection.collect{|obj| [obj.val1, obj.val2]}.uniq! for val in vals groups << collection.select{|obj| obj.val1 == val[0] && obj.val2 = val[1] end -- Posted via http://www.ruby-forum.com/.