Vzhledem k seznamu v Pythonu a číslu x spočítejte počet výskytů x v daném seznamu.
Příklady:
Input: lst = [15, 6, 7, 10, 12, 20, 10, 28, 10], x = 10 Output: 3 Explanation: 10 appears three times in given list. Input: lst = [8, 6, 8, 10, 8, 20, 10, 8, 8], x = 16 Output: 0 Explanation: 16 appears zero times in given list.>
Počítejte výskyty položky v seznamu Python
Níže jsou uvedeny metody, pomocí kterých můžeme spočítat všechny výskyty prvku v seznamu Python.
- Použití smyčky v Pythonu
- Používání funkce List Comprehension
- Použití funkce enumerate
- Použití count()
- Použití Counter()
- Použití countOf()
- Použitím porozumění slovníku
- Používání knihovny Pandas
Python Počítání výskytů pomocí smyčky v Pythonu
Udržujeme počítadlo, které se neustále zvyšuje, pokud je v seznamu nalezen požadovaný prvek.
Python3
# Python code to count the number of occurrences> def> countX(lst, x):> >count>=> 0> >for> ele>in> lst:> >if> (ele>=>=> x):> >count>=> count>+> 1> >return> count> # Driver Code> lst>=> [>8>,>6>,>8>,>10>,>8>,>20>,>10>,>8>,>8>]> x>=> 8> print>(>'{} has occurred {} times'>.>format>(x,> >countX(lst, x)))> |
>
>Výstup
8 has occurred 5 times>
Python Count Occurences pomocí List Comprehension
V tomto příkladu používáme porozumění seznamu spočítat všechny výskyty prvku v seznamu Pythonu.
Python3
l>=> [>1>,>1>,>2>,>2>,>2>,>3>,>3>,>4>,>4>,>5>,>5>]> ele>=>1> x>=>[i>for> i>in> l>if> i>=>=>ele]> print>(>'the element'>,ele,>'occurs'>,>len>(x),>'times'>)> |
>
np std
>Výstup
the element 1 occurs 2 times>
Python Count pomocí funkce Enumerate
V tomto příkladu používáme funkce výčtu spočítat všechny výskyty prvku v seznamu Pythonu.
Python3
l>=> [>1>,>1>,>2>,>2>,>2>,>3>,>3>,>4>,>4>,>5>,>5>]> ele>=>1> x>=>[i>for> j,i>in> enumerate>(l)>if> i>=>=>ele]> print>(>'the element'>,ele,>'occurs'>,>len>(x),>'times'>)> |
>
>Výstup
the element 1 occurs 2 times>
Spočítat výskyty prvku pomocí count()
Smyslem je použít metoda seznamu count() spočítat počet výskytů.
Python3
# Python code to count the number of occurrences> def> countX(lst, x):> >return> lst.count(x)> # Driver Code> lst>=> [>8>,>6>,>8>,>10>,>8>,>20>,>10>,>8>,>8>]> x>=> 8> print>(>'{} has occurred {} times'>.>format>(x,> >countX(lst, x)))> |
>
>Výstup
8 has occurred 5 times>
Python Počítání výskytů prvku v seznamu pomocí Counter()
Metoda ccounter vrací slovník s výskyty všech prvků jako pár klíč–hodnota, kde klíč je prvek a hodnota je počet výskytů prvku.
Python3
from> collections>import> Counter> # declaring the list> l>=> [>1>,>1>,>2>,>2>,>3>,>3>,>4>,>4>,>5>,>5>]> # driver program> x>=> 3> d>=> Counter(l)> print>(>'{} has occurred {} times'>.>format>(x, d[x]))> |
>
>Výstup
3 has occurred 2 times>
Spočítat výskyty prvku u zpívat počet()
Operator.countOf() se používá pro počítání počtu výskytů b v a. Počítá počet výskytů hodnoty. Vrací Počet několika výskytů hodnoty.
Python3
if-else java
import> operator as op> # declaring the list> l>=> [>1>,>1>,>2>,>2>,>2>,>3>,>3>,>4>,>4>,>5>,>5>]> # driver program> x>=> 2> print>(f>'{x} has occurred {op.countOf(l, x)} times'>)> |
>
>Výstup
2 has occurred 3 times>
Použití Python Dictionary Comprehension
Python umožňuje porozumění slovníku . Můžeme vytvářet slovníky pomocí jednoduchých výrazů. Slovník má tvar {klíč: hodnota pro (klíč, hodnota) v iterable}
Python3
parametr ve skriptu shellu
lis>=> [>'a'>,>'d'>,>'d'>,>'c'>,>'a'>,>'b'>,>'b'>,>'a'>,>'c'>,>'d'>,>'e'>]> occurrence>=> {item: lis.count(item)>for> item>in> lis}> print>(occurrence.get(>'e'>))> |
>
>Výstup
1>
Pomocí knihovny Pandas
Funkce Pandas Series.value_counts() vrací řadu obsahující počty jedinečných hodnot. Výsledný objekt bude v sestupném pořadí, takže první prvek je nejčastěji se vyskytujícím prvkem.
Python3
import> pandas as pd> # declaring the list> l>=> [>1>,>1>,>2>,>2>,>2>,>3>,>3>,>4>,>4>,>5>,>5>]> count>=> pd.Series(l).value_counts()> print>(>'Element Count'>)> print>(count)> |
>
>
Výstup:
Element Count 2 3 1 2 3 2 4 2 5 2 dtype: int64>