最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用Python找出序列中出現(xiàn)最多的元素示例代碼

 更新時間:2017年12月08日 14:32:14   作者:標(biāo)點符  
這篇文章主要給大家介紹了關(guān)于利用Python找出序列中出現(xiàn)最多的元素的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

Python包含6種內(nèi)置的序列:列表、元組、字符串 、Unicode字符串、buffer對象、xrange對象。在序列中的每個元素都有自己的編號。列表與元組的區(qū)別在于,列表是可以修改,而組元不可修改。理論上幾乎所有情況下元組都可以用列表來代替。有個例外是但元組作為字典的鍵時,在這種情況下,因為鍵不可修改,所以就不能使用列表。

我們在一些統(tǒng)計工作或者分析過程中,有事會遇到要統(tǒng)計一個序列中出現(xiàn)最多次的元素,比如一段英文中,查詢出現(xiàn)最多的詞是什么,及每個詞出現(xiàn)的次數(shù)。一遍的做法為,將每個此作為key,出現(xiàn)一次,value增加1。

例如:

morewords = ['why','are','you','not','looking','in','my','eyes']
for word in morewords:
 word_counts[word] += 1

collections.Counter 類就是專門為這類問題而設(shè)計的, 它甚至有一個有用的 most_common() 方法直接給了你答案。

collections模塊

collections模塊自Python 2.4版本開始被引入,包含了dict、set、list、tuple以外的一些特殊的容器類型,分別是:

  • OrderedDict類:排序字典,是字典的子類。引入自2.7。
  • namedtuple()函數(shù):命名元組,是一個工廠函數(shù)。引入自2.6。
  • Counter類:為hashable對象計數(shù),是字典的子類。引入自2.7。
  • deque:雙向隊列。引入自2.4。
  • defaultdict:使用工廠函數(shù)創(chuàng)建字典,使不用考慮缺失的字典鍵。引入自2.5。

文檔參見:http://docs.python.org/2/library/collections.html。

Counter類

Counter類的目的是用來跟蹤值出現(xiàn)的次數(shù)。它是一個無序的容器類型,以字典的鍵值對形式存儲,其中元素作為key,其計數(shù)作為value。計數(shù)值可以是任意的Interger(包括0和負(fù)數(shù))。Counter類和其他語言的bags或multisets很相似。

為了演示,先假設(shè)你有一個單詞列表并且想找出哪個單詞出現(xiàn)頻率最高。你可以這樣做:

words = [
 'look', 'into', 'my', 'eyes', 'look', 'into', 'my', 'eyes',
 'the', 'eyes', 'the', 'eyes', 'the', 'eyes', 'not', 'around', 'the',
 'eyes', "don't", 'look', 'around', 'the', 'eyes', 'look', 'into',
 'my', 'eyes', "you're", 'under'
]
from collections import Counter
word_counts = Counter(words)
# 出現(xiàn)頻率最高的3個單詞
top_three = word_counts.most_common(3)
print(top_three)
# Outputs [('eyes', 8), ('the', 5), ('look', 4)]

另外collections.Counter還有一個比較高級的功能,支持?jǐn)?shù)學(xué)算術(shù)符的相加相減。

>>> a = Counter(words)
>>> b = Counter(morewords)
>>> a
Counter({'eyes': 8, 'the': 5, 'look': 4, 'into': 3, 'my': 3, 'around': 2,
"you're": 1, "don't": 1, 'under': 1, 'not': 1})
>>> b
Counter({'eyes': 1, 'looking': 1, 'are': 1, 'in': 1, 'not': 1, 'you': 1,
'my': 1, 'why': 1})
>>> # Combine counts
>>> c = a + b
>>> c
Counter({'eyes': 9, 'the': 5, 'look': 4, 'my': 4, 'into': 3, 'not': 2,
'around': 2, "you're": 1, "don't": 1, 'in': 1, 'why': 1,
'looking': 1, 'are': 1, 'under': 1, 'you': 1})
>>> # Subtract counts
>>> d = a - b
>>> d
Counter({'eyes': 7, 'the': 5, 'look': 4, 'into': 3, 'my': 2, 'around': 2,
"you're": 1, "don't": 1, 'under': 1})
>>>

參考文檔:

https://docs.python.org/3/library/collections.html

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • Python3.10安裝圖文教程

    Python3.10安裝圖文教程

    本文主要介紹了Python3.10安裝圖文教程,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • Python生成動態(tài)路由軌跡圖的示例詳解

    Python生成動態(tài)路由軌跡圖的示例詳解

    在當(dāng)今的數(shù)據(jù)驅(qū)動時代,可視化技術(shù)在數(shù)據(jù)分析和決策支持中扮演著越來越重要的角色,本文將介紹如何使用Python來生成動態(tài)的路由軌跡圖,需要的可以了解下
    2025-02-02
  • Python腳本導(dǎo)出為exe程序的方法

    Python腳本導(dǎo)出為exe程序的方法

    這篇文章主要介紹了如何把Python腳本導(dǎo)出為exe程序的方法,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • 解決python中遇到字典里key值為None的情況,取不出來的問題

    解決python中遇到字典里key值為None的情況,取不出來的問題

    今天小編就為大家分享一篇解決python中遇到字典里key值為None的情況,取不出來的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python設(shè)置Socket代理及實現(xiàn)遠(yuǎn)程攝像頭控制的例子

    Python設(shè)置Socket代理及實現(xiàn)遠(yuǎn)程攝像頭控制的例子

    這篇文章主要介紹了Python設(shè)置Socket代理及實現(xiàn)遠(yuǎn)程攝像頭控制的例子,皆是對socket模塊的實際運用,需要的朋友可以參考下
    2015-11-11
  • Python 中的單分派泛函數(shù)你真的了解嗎

    Python 中的單分派泛函數(shù)你真的了解嗎

    singledispatch是標(biāo)準(zhǔn)庫functools模塊的函數(shù) 可以把整體方案拆成多個模塊,甚至可以為你無法修改的類提供專門的函數(shù),使用@singledispatch裝飾的函數(shù)會變成泛函數(shù),本文帶領(lǐng)大家再次學(xué)習(xí)Python 中的單分派泛函數(shù),一起學(xué)習(xí)下吧
    2021-06-06
  • 深入淺析python變量加逗號,的含義

    深入淺析python變量加逗號,的含義

    這篇文章主要介紹了python變量加逗號,的含義,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • Python scikit-learn 做線性回歸的示例代碼

    Python scikit-learn 做線性回歸的示例代碼

    本篇文章主要介紹了Python scikit-learn 做線性回歸的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • python3.7.2 tkinter entry框限定輸入數(shù)字的操作

    python3.7.2 tkinter entry框限定輸入數(shù)字的操作

    這篇文章主要介紹了python3.7.2 tkinter entry框限定輸入數(shù)字的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python3.8中如何使用print打印變量

    Python3.8中如何使用print打印變量

    這篇文章主要介紹了Python3.8中如何使用print打印變量問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評論

茂名市| 蒲城县| 镇坪县| 洛南县| 志丹县| 赣榆县| 玛沁县| 宁陕县| 兴文县| 绥宁县| 奉节县| 淳安县| 南开区| 防城港市| 彭泽县| 正定县| 北川| 海丰县| 凌云县| 涟源市| 永修县| 拉孜县| 庐江县| 平利县| 大洼县| 新安县| 溧阳市| 云阳县| 马边| 河南省| 汤原县| 临颍县| 麻江县| 曲周县| 龙南县| 大渡口区| 赤城县| 开化县| 巴东县| 壶关县| 福鼎市|