DEV Community

oladejo abdullahi
oladejo abdullahi

Posted on • Edited on

3 1

Count Repeated element in the list [duplicate]

Count the number of Repeated element in the list

To count the Repeated element in list is very similar to the way we count the character in a string. here are three methods that can be use to do this.

Method 1 : Naive method

just like we learn in counting character in string we need to loop through the entire List for that particular element and then increase the counter when we meet the element again.

Example

you were given a variable MyList containing some elements you were to count the number of 'a' in the string.
Here is the codes:

MyList = ["b", "a", "a", "c", "b", "a", "c",'a']
count=0
for i in MyList:
    if i == 'a': 
        count = count + 1  
print ("the number of a in MyList is :", count)
Enter fullscreen mode Exit fullscreen mode

Output:

the number of a in MyList is : 4
Enter fullscreen mode Exit fullscreen mode

Method 2 : Using count()

Using count() is the convinient method in Python to get the occurrence of any element in List. the formula to count element in list with this method is:
list.count('element')

Example1

Let say we need to count 'b' in MyList here is the code:

MyList = ["b", "a", "a", "c", "b", "a", "c",'a']
counter_b=MyList.count('b')
print(counter_b)
Enter fullscreen mode Exit fullscreen mode

Output:

2
Enter fullscreen mode Exit fullscreen mode

Example2

what if we wish to count each of the elements in the List. our code will be..

MyList = ["b", "a", "a", "c", "b", "a", "c",'a']
duplicate_dict={} # a dictionary to store each of them.
for i in MyList:#loop through them.
    duplicate_dict[i]=MyList.count(i)
print(duplicate_dict)#to get the occurence of each of the element
Enter fullscreen mode Exit fullscreen mode

Output:

{'b': 2, 'a': 4, 'c': 2}
Enter fullscreen mode Exit fullscreen mode

A shortcuts code for the above are:

MyList = ["b", "a", "a", "c", "b", "a", "c",'a']
duplicate_dict = {i:MyList.count(i) for i in MyList}
print(duplicate_dict)
Enter fullscreen mode Exit fullscreen mode

Output:

{'b': 2, 'a': 4, 'c': 2}
Enter fullscreen mode Exit fullscreen mode

Method3 : Using collections.Counter()

This method works also the same way only that you need to import Counter from the collection before use.
Let's see how to use it to solve the same question

#we need to import counter function.
from collections import Counter
MyList = ["a", "b", "a", "c", "c", "a", "c"]
duplicate_dict = Counter(MyList)
print(duplicate_dict)#to get occurence of each of the element.
print(duplicate_dict['a'])# to get occurence of specific element.
Enter fullscreen mode Exit fullscreen mode

Output:

Counter({'a': 3, 'c': 3, 'b': 1})
3
Enter fullscreen mode Exit fullscreen mode

remember to import the Counter if you are using Method otherwise you get error. I hope you find this helpful, yeah keep on enjoying coding.

if you have any question don't hesitate to ask. chat me up on WhatsApp or Mail. Don't forget to follow me on Twitter so that you don't miss any of my articles.

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more

Top comments (2)

Collapse
 
chemistlabs profile image
Madi GoBuddy

I loved it, thanks....

Collapse
 
maxwizardth profile image
oladejo abdullahi

You are welcome!

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

AWS GenAI Live!

GenAI LIVE! is a dynamic live-streamed show exploring how AWS and our partners are helping organizations unlock real value with generative AI.

Tune in to the full event

DEV is partnering to bring live events to the community. Join us or dismiss this billboard if you're not interested. ❤️