我在 Ruby 中有一个哈希值,它存储字符串的词频,单词作为键,频率作为值。
words = a_string.split(/ /)
freqs = Hash.new(0)
words.each { |word| freqs[word] += 1 }
freqs = freqs.sort_by {|x,y| y }
freqs.reverse!
freqs.each do |word, freq|
puts word+' '+freq.to_s
end
我读过哈希迭代器以随机顺序返回哈希,但这似乎到目前为止有效。
现在我需要对频率进行散列以仅包含 20 个最常用的单词。我怎样才能做到这一点?谢谢阅读。