Hoe tel ik de frequentie van de elementen in een lijst?

Ik moet de frequentie van elementen in een lijst vinden

a = [1,1,1,1,2,2,2,2,3,3,4,5,5]

output->

b = [4,4,2,1,2]

Ook wil ik de dubbels verwijderen uit een

a = [1,2,3,4,5]

Om het aantal verschijningen te tellen:

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1

Om duplicaten te verwijderen:

a = set(a) 
Commentaren (2)

Het tellen van de frequentie van elementen kan waarschijnlijk het best met een woordenboek worden gedaan:

b = {}
for item in a:
    b[item] = b.get(item, 0) + 1

Om de dubbels te verwijderen, gebruik je een set:

a = list(set(a))
Commentaren (4)

Voor je eerste vraag, itereer de lijst en gebruik een dictionary om bij te houden of een element bestaat.

Voor je tweede vraag, gebruik gewoon de set operator.

Commentaren (1)