How to count Ruby Array items

Posted by Flatiron School  /  December 18, 2012

The following is a guest post by Rex Feng and originally appeared on his blog. Rex is currently a student a The Flatiron School. You can learn more about him here, or follow him on twitter here.

While working in Ruby, I often find myself trying to get a count of the number of times each item appears in an array. Below, I’ll show you how to create a Hash that iterates through each item in the array and counts the number of occurrences.

We have an array of animals that we want to count.

Blog post image: tumblr_mexmq5stvj1rtan47.png

We can count them up by creating a new Hash.

Blog post image: tumblr_mexmqcXYNe1rtan47.png

Next, we want to iterate through the animals Array and set the animal_count Key as the animal name & the animal_count Value as the counter.

Blog post image: tumblr_mexmqnoHuU1rtan47.png

For each animal in animals, we’ve either created a new Key / Value pair in animal_count or incremented the Value corresponding to the animal Key.

Blog post image: tumblr_mexmqyuB5k1rtan47.png