いつもすばやい回答でありがたいです

> そうです。
> ちなみにクラスは違えどString#squeezeがUnixコマンドのuniq相当です。
> Array#squeezeはありません。

Array#uniq があります。

1> RUBY_VERSION   # => "1.8.7"
2> ary = [1, 2, 1, 1, 3, 2, 2, 3, 3, 2]
3> ary.group_by{|e| e}
4> # => {1=>[1, 1, 1], 2=>[2, 2, 2, 2], 3=>[3, 3, 3]}
5> Hash.new(0).tap{|cnt| ary.each{|e| cnt[e]+=1 }} # => {1=>3, 2=>4, 3=>3}
6> ary.count(2)                                    # => 4

1〜4 はわかりましたが、5,6 で躓きました。
tap に秘密がありそう。

# http://www.ruby-lang.org/ja/man にもまだ tap, group_by 共に
# 載っていない様ですね。

やりたいことの関係では group_by が良いかも知れません。
 ary が配列の配列だったときに
 ary.group_by{|e| e[1] }  
見たいにできるのですよね?


が、、、
> どの方法もRuby 1.8.7が必要です。

1.8.1 と 1.8.6 だ。。。
VersionUp します。
ありがとうございました。