J'ai un hachage dans Ruby qui stocke la fréquence des mots d'une chaîne, avec le mot comme clé et la fréquence comme valeur.Comment diviser un hachage basé sur des valeurs dans 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
J'ai lu que itérateurs de hachage retourner le hachage dans un ordre aléatoire, mais cela semble fonctionner jusqu'à présent.
Maintenant, j'ai besoin de freqs hash pour ne contenir que les 20 mots les plus fréquents. Comment puis-je faire ceci? Merci d'avoir lu.
Ah, c'est logique. Merci de votre aide. – ben