RosettaCodeData/Task/Entropy/Ruby/entropy.rb
2023-07-01 13:44:08 -04:00

11 lines
207 B
Ruby

def entropy(s)
counts = s.chars.tally
leng = s.length.to_f
counts.values.reduce(0) do |entropy, count|
freq = count / leng
entropy - freq * Math.log2(freq)
end
end
p entropy("1223334444")