Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Trong Python 2.7 (hoặc mới hơn), bạn có thể sử dụng

from collections import defaultdict

appearances = defaultdict(int)

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

>>> import collections
>>> a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
>>> counter = collections.Counter(a)
>>> counter
Counter({1: 4, 2: 4, 5: 2, 3: 2, 4: 1})
>>> counter.values()
dict_values([2, 4, 4, 1, 2])
>>> counter.keys()
dict_keys([5, 1, 2, 4, 3])
>>> counter.most_common(3)
[(1, 4), (2, 4), (5, 2)]
>>> dict(counter)
{5: 2, 1: 4, 2: 4, 4: 1, 3: 2}
>>> # Get the counts in order matching the original specification,
>>> # by iterating over keys in sorted order
>>> [counter[x] for x in sorted(counter.keys())]
[4, 4, 2, 1, 2]

Nếu bạn đang sử dụng Python 2.6 trở lên, bạn có thể tải xuống triển khai tại đây.

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Karl Knechtel

59.3k10 Huy hiệu vàng86 Huy hiệu bạc130 Huy hiệu đồng10 gold badges86 silver badges130 bronze badges

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 13:02Jan 29, 2010 at 13:02

UnutbuUnutbuunutbu

802K173 Huy hiệu vàng1724 Huy hiệu bạc1625 Huy hiệu Đồng173 gold badges1724 silver badges1625 bronze badges

5

Nếu danh sách được sắp xếp, bạn có thể sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
5 từ thư viện tiêu chuẩn
from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
6 (nếu không, bạn có thể sắp xếp nó trước, mặc dù điều này mất thời gian o (n lg n)):

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]

Output:

[4, 4, 2, 1, 2]

Karl Knechtel

59.3k10 Huy hiệu vàng86 Huy hiệu bạc130 Huy hiệu đồng10 gold badges86 silver badges130 bronze badges

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 13:02Jan 29, 2010 at 12:18

UnutbuUnutbuNadia Alramli

802K173 Huy hiệu vàng1724 Huy hiệu bạc1625 Huy hiệu Đồng35 gold badges170 silver badges151 bronze badges

11

Nếu danh sách được sắp xếp, bạn có thể sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
5 từ thư viện tiêu chuẩn
from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
6 (nếu không, bạn có thể sắp xếp nó trước, mặc dù điều này mất thời gian o (n lg n)):

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 12:18Mar 16, 2012 at 20:44

Nadia Alramlinadia AlramliAmjith

108K35 Huy hiệu vàng170 Huy hiệu bạc151 Huy hiệu đồng14 gold badges43 silver badges38 bronze badges

9

Python 2.7+ giới thiệu từ điển hiểu. Xây dựng từ điển từ danh sách sẽ giúp bạn có được số lượng cũng như thoát khỏi các bản sao.

from collections import defaultdict

appearances = defaultdict(int)

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

Karl Knechtel

59.3k10 Huy hiệu vàng86 Huy hiệu bạc130 Huy hiệu đồng10 gold badges86 silver badges130 bronze badges

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 13:02Jan 29, 2010 at 12:16

UnutbuUnutbuIdan K

802K173 Huy hiệu vàng1724 Huy hiệu bạc1625 Huy hiệu Đồng9 gold badges62 silver badges83 bronze badges

3

Nếu danh sách được sắp xếp, bạn có thể sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
5 từ thư viện tiêu chuẩn
from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
6 (nếu không, bạn có thể sắp xếp nó trước, mặc dù điều này mất thời gian o (n lg n)):

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>>
>>> from collections import Counter
>>> c=Counter(a)
>>>
>>> c.values()
[4, 4, 2, 1, 2]
>>>
>>> c.keys()
[1, 2, 3, 4, 5]

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 12:18Jan 29, 2010 at 13:00

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Nadia Alramlinadia AlramliYOU

108K35 Huy hiệu vàng170 Huy hiệu bạc151 Huy hiệu đồng32 gold badges184 silver badges216 bronze badges

2

Python 2.7+ giới thiệu từ điển hiểu. Xây dựng từ điển từ danh sách sẽ giúp bạn có được số lượng cũng như thoát khỏi các bản sao.

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

Đã trả lời ngày 16 tháng 3 năm 2012 lúc 20:44

a = list(set(a))

Amjithamjith

802K173 Huy hiệu vàng1724 Huy hiệu bạc1625 Huy hiệu Đồng9 gold badges62 silver badges83 bronze badges

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 13:02Jan 29, 2010 at 12:16

UnutbuUnutbulindelof

802K173 Huy hiệu vàng1724 Huy hiệu bạc1625 Huy hiệu Đồng31 gold badges96 silver badges137 bronze badges

5

Nếu danh sách được sắp xếp, bạn có thể sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
5 từ thư viện tiêu chuẩn
from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
6 (nếu không, bạn có thể sắp xếp nó trước, mặc dù điều này mất thời gian o (n lg n)):

import numpy as np
a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
np.unique(a, return_counts=True)

Output:

(array([1, 2, 3, 4, 5]), array([4, 4, 2, 1, 2], dtype=int64))

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 12:18

Nadia Alramlinadia Alramli

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
0

108K35 Huy hiệu vàng170 Huy hiệu bạc151 Huy hiệu đồngJul 23, 2017 at 18:11

Python 2.7+ giới thiệu từ điển hiểu. Xây dựng từ điển từ danh sách sẽ giúp bạn có được số lượng cũng như thoát khỏi các bản sao.

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
1

Đã trả lời ngày 16 tháng 3 năm 2012 lúc 20:44

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
2
from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
3

AmjithamjithMar 31, 2019 at 2:17

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

21.9K14 Huy hiệu vàng43 Huy hiệu bạc38 Huy hiệu đồngrbento

Đếm số lượng lần xuất hiện theo cách thủ công bằng cách lặp qua danh sách và đếm chúng, sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
7 để theo dõi những gì đã thấy cho đến nay:3 gold badges54 silver badges57 bronze badges

0

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 12:16

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
4

Idan Kidan k

20.2k9 Huy hiệu vàng62 Huy hiệu bạc83 Huy hiệu ĐồngJan 30, 2016 at 18:35

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
5

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Trong Python 2.7+, bạn có thể sử dụng bộ sưu tập.

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 13:009 gold badges43 silver badges79 bronze badges

BạnDec 27, 2017 at 19:39

2

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
6

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 13:02Jan 29, 2010 at 12:18

UnutbuUnutbulprsd

802K173 Huy hiệu vàng1724 Huy hiệu bạc1625 Huy hiệu Đồng47 gold badges132 silver badges167 bronze badges

3

Nếu danh sách được sắp xếp, bạn có thể sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
5 từ thư viện tiêu chuẩn
from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
6 (nếu không, bạn có thể sắp xếp nó trước, mặc dù điều này mất thời gian o (n lg n)):

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
7

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 12:18

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
8

Result:

from itertools import groupby

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
[len(list(group)) for key, group in groupby(sorted(a))]
9

Karl Knechtel

59.3k10 Huy hiệu vàng86 Huy hiệu bạc130 Huy hiệu đồng10 gold badges86 silver badges130 bronze badges

Nadia Alramlinadia AlramliSep 21, 2020 at 17:05

108K35 Huy hiệu vàng170 Huy hiệu bạc151 Huy hiệu đồngjobima

Python 2.7+ giới thiệu từ điển hiểu. Xây dựng từ điển từ danh sách sẽ giúp bạn có được số lượng cũng như thoát khỏi các bản sao.1 gold badge19 silver badges18 bronze badges

Đã trả lời ngày 16 tháng 3 năm 2012 lúc 20:44

[4, 4, 2, 1, 2]
0

AmjithamjithJun 30, 2015 at 18:39

2

21.9K14 Huy hiệu vàng43 Huy hiệu bạc38 Huy hiệu đồng

Đếm số lượng lần xuất hiện theo cách thủ công bằng cách lặp qua danh sách và đếm chúng, sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
7 để theo dõi những gì đã thấy cho đến nay:

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 12:16Jan 29, 2010 at 12:10

t3rset3rset3rse

Idan Kidan k11 gold badges55 silver badges84 bronze badges

1

[4, 4, 2, 1, 2]
1

20.2k9 Huy hiệu vàng62 Huy hiệu bạc83 Huy hiệu Đồng

[4, 4, 2, 1, 2]
2

Trong Python 2.7+, bạn có thể sử dụng bộ sưu tập.Dec 6, 2016 at 16:50

Đã trả lời ngày 29 tháng 1 năm 2010 lúc 13:00

[4, 4, 2, 1, 2]
3

Bạn

[4, 4, 2, 1, 2]
4

Huy hiệu vàng 116K32Oct 26, 2018 at 15:17

Đếm tần số của các phần tử có lẽ được thực hiện tốt nhất với từ điển:jax

Để loại bỏ các bản sao, hãy sử dụng một tập hợp:6 gold badges38 silver badges64 bronze badges

[4, 4, 2, 1, 2]
5
  1. Idan k
  2. Lindeloflindelof

33.7K31 Huy hiệu vàng96 Huy hiệu bạc137 Huy hiệu đồng

[4, 4, 2, 1, 2]
6

Bạn có thể làm được việc này:Apr 9, 2019 at 12:00

0

Mảng thứ nhất là các giá trị và mảng thứ hai là số lượng phần tử với các giá trị này.

[4, 4, 2, 1, 2]
7

Vì vậy, nếu bạn muốn nhận chỉ có mảng với các số, bạn nên sử dụng điều này:Apr 18, 2019 at 23:32

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Đã trả lời ngày 23 tháng 7 năm 2017 lúc 18:11oshaiken

Dưới đây là một giải pháp thay thế succint khác sử dụng

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
8 cũng hoạt động cho đầu vào không có thứ tự:1 gold badge14 silver badges23 bronze badges

2

[4, 4, 2, 1, 2]
8

kết quảOct 19, 2021 at 4:00

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

d.bd.bd.b

Đã trả lời ngày 31 tháng 3 năm 2019 lúc 2:175 gold badges33 silver badges72 bronze badges

[4, 4, 2, 1, 2]
9

rbentorbentoJul 10, 2015 at 9:31

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
0

8.0023 huy hiệu vàng54 Huy hiệu bạc57 Huy hiệu đồngSep 3, 2017 at 18:40

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

1

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
1

Tôi chỉ đơn giản là sử dụng scipy.stats.itemfreq theo cách sau:

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
2

Bạn có thể kiểm tra tài liệu tại đây: http://docs.scipy.org/doc/scipy-0.16.0/reference/generated/scipy.stats.itemfreq.htmlJan 26, 2018 at 9:26

Đã trả lời ngày 30 tháng 1 năm 2016 lúc 18:35

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
3

SheldonzyJan 27, 2018 at 9:37

5.0219 Huy hiệu vàng43 Huy hiệu bạc79 Huy hiệu đồngroberto

Đã trả lời ngày 27 tháng 12 năm 2017 lúc 19:395 silver badges5 bronze badges

LPRSDLPRSD

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
4

Nó sạch hơn nếu bạn đếm Zeroes quá:

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
5

Một lời giải thích:

  • Chúng tôi bắt đầu với một danh sách
    from collections import defaultdict
    
    appearances = defaultdict(int)
    
    for curr in a:
        appearances[curr] += 1
    
    9 trống;
  • Nếu phần tử tiếp theo
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    0 của
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    1 thấp hơn kích thước của
    from collections import defaultdict
    
    appearances = defaultdict(int)
    
    for curr in a:
        appearances[curr] += 1
    
    9, chúng tôi chỉ cập nhật phần tử này:
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    3 có nghĩa là
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    4 nếu chỉ mục
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    5 của
    from collections import defaultdict
    
    appearances = defaultdict(int)
    
    for curr in a:
        appearances[curr] += 1
    
    9 là phần tử hiện tại
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    0, nếu không thì giá trị trước đó
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    8;
  • Nếu phần tử tiếp theo
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    0 của
    >>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
    >>>
    >>> from collections import Counter
    >>> c=Counter(a)
    >>>
    >>> c.values()
    [4, 4, 2, 1, 2]
    >>>
    >>> c.keys()
    [1, 2, 3, 4, 5]
    
    1 lớn hơn hoặc bằng với kích thước của
    from collections import defaultdict
    
    appearances = defaultdict(int)
    
    for curr in a:
        appearances[curr] += 1
    
    9, chúng ta phải mở rộng
    from collections import defaultdict
    
    appearances = defaultdict(int)
    
    for curr in a:
        appearances[curr] += 1
    
    9 để lưu trữ
    b = {}
    for item in a:
        b[item] = b.get(item, 0) + 1
    
    3 mới.

Các yếu tố không phải được sắp xếp (

from collections import defaultdict

appearances = defaultdict(int)

for curr in a:
    appearances[curr] += 1
8). Bạn sẽ nhận được kết quả kỳ lạ nếu bạn có số âm.

Đã trả lời ngày 26 tháng 3 năm 2019 lúc 17:52Mar 26, 2019 at 17:52

Jferardjferardjferard

7.4272 Huy hiệu vàng20 Huy hiệu bạc32 Huy hiệu Đồng2 gold badges20 silver badges32 bronze badges

Một cách tiếp cận khác để làm điều này, mặc dù bằng cách sử dụng một thư viện nặng hơn nhưng mạnh mẽ - NLTK.

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
6

Đã trả lời ngày 29 tháng 9 năm 2019 lúc 16:38Sep 29, 2019 at 16:38

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Tìm thấy một cách khác để làm điều này, sử dụng các bộ.

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
7

Đã trả lời ngày 23 tháng 4 năm 2020 lúc 17:36Apr 23, 2020 at 17:36

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Đối với một danh sách không có thứ tự, bạn nên sử dụng:

>>> a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
>>> d = {x:a.count(x) for x in a}
>>> d
{1: 4, 2: 4, 3: 2, 4: 1, 5: 2}
>>> a, b = d.keys(), d.values()
>>> a
[1, 2, 3, 4, 5]
>>> b
[4, 4, 2, 1, 2]
8

Đầu ra là

[4, 4, 2, 1, 2]

Đã trả lời ngày 17 tháng 9 năm 2020 lúc 15:49Sep 17, 2020 at 15:49

Luigi Tiburziluigi TiburziLuigi Tiburzi

4.1957 Huy hiệu vàng32 Huy hiệu bạc42 Huy hiệu đồng7 gold badges32 silver badges42 bronze badges

1

Một giải pháp khác với một thuật toán khác mà không sử dụng các bộ sưu tập:

from collections import defaultdict

appearances = defaultdict(int)

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

Đã trả lời ngày 20 tháng 12 năm 2015 lúc 8:17Dec 20, 2015 at 8:17

Hướng dẫn find frequency of each element in list python - tìm tần suất của từng phần tử trong python danh sách

Reza Abtinreza AbtinReza Abtin

2053 Huy hiệu bạc7 Huy hiệu đồng3 silver badges7 bronze badges

Bạn có thể sử dụng chức năng được xây dựng được cung cấp trong Python

from collections import defaultdict

appearances = defaultdict(int)

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

Mã trên tự động xóa các bản sao trong danh sách và cũng in tần số của từng phần tử trong danh sách ban đầu và danh sách không có bản sao.

Hai con chim cho một phát bắn! X d

Đã trả lời ngày 30 tháng 10 năm 2017 lúc 14:49Oct 30, 2017 at 14:49

Cách tiếp cận này có thể được thử nếu bạn không muốn sử dụng bất kỳ thư viện nào và giữ cho nó đơn giản và ngắn gọn!

from collections import defaultdict

appearances = defaultdict(int)

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

o/p

[4, 4, 2, 1, 2]

Đã trả lời ngày 6 tháng 12 năm 2017 lúc 18:44Dec 6, 2017 at 18:44

Làm thế nào để bạn tìm thấy tần số trong Python?

Lặp qua chức năng đếm và sử dụng (tức là chuỗi.Count (Báo chí [Lặp lại])) để tìm tần số của từ ở mỗi lần lặp. count(newstring[iteration])) to find the frequency of word at each iteration.

Làm thế nào để bạn đếm sự xuất hiện của từng phần tử trong một mảng trong Python?

Phương pháp 4: Số lần xuất hiện của một phần tử trong danh sách bằng toán tử Countof ().Countof () được sử dụng để đếm số lần xuất hiện của B trong a.Nó đếm số lần xuất hiện của giá trị.Using countof() Operator. countOf() is used for counting the number of occurrences of b in a. It counts the number of occurrences of value.

Làm thế nào để bạn tìm thấy tần số của một phần tử?

Tần số của một phần tử có thể được tính bằng hai vòng.Một vòng lặp sẽ được sử dụng để chọn một phần tử từ một mảng và một vòng lặp khác sẽ được sử dụng để so sánh phần tử đã chọn với phần còn lại của mảng.Khởi tạo số lượng đến 1 trong vòng lặp đầu tiên để duy trì số lượng của từng phần tử.using two loops. One loop will be used to select an element from an array, and another loop will be used to compare the selected element with the rest of the array. Initialize count to 1 in the first loop to maintain a count of each element.

Làm thế nào để bạn đếm tần số của một chuỗi trong danh sách Python?

Chúng ta có thể sử dụng phương thức bộ đếm () từ mô -đun bộ sưu tập để đếm tần số của các phần tử trong danh sách.use the counter() method from the collections module to count the frequency of elements in a list.