- 392 名前:203 mailto:sage [2009/08/24(月) 20:16:26 ]
- また,質問です.行列のようになった方がみやすいと思って
>>222さんのものをつかって require 'pp' ary = %w(w1 w2 w3 w4 w2 w3 w1 w1 w5 w2 w3 w4) col = %w (w1 w2 w3) zero = ary.uniq.inject(Hash.new){|h,w| h[w] = 0 ; h } window = 6 hout = Hash.new ary.each_with_index do |key,i| (hout[key] = zero.dup) unless hout.key?(key) ary[i+1,window].select{|e| e != key }.each {|word| hout[key][word] += 1 } end pp hout このようにしました. そして,colを行列の項目のようにして {"w1"=>{"w1"=>0, "w2"=>4, "w3"=>4}, "w2"=>{"w1"=>4, "w2"=>0, "w3"=>5}, "w3"=>{"w1"=>4, "w2"=>2, "w3"=>0}} という出力が欲しいのですが,どのように書き換えればいいか分かりません. 前回の1つ1つは理解できたと思っていましたができませんでした・・・・.すいません.
|

|