溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Python詞頻統(tǒng)計(jì)的方法有哪些

發(fā)布時(shí)間:2021-12-06 16:08:58 來(lái)源:億速云 閱讀:227 作者:小新 欄目:開(kāi)發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)Python詞頻統(tǒng)計(jì)的方法有哪些,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

    統(tǒng)計(jì)文件里每個(gè)單詞的個(gè)數(shù)

    思路:

    分別統(tǒng)計(jì)文檔中的單詞,與出現(xiàn)的次數(shù)

    用兩個(gè)列表將其保存起來(lái),最后再用zip()函數(shù)連接輸出**

    想法成立開(kāi)始實(shí)踐

    方法一:

    # 導(dǎo)入文件
    with open("passage.txt", 'r') as file:
        dates = file.readlines()
    # 處理
    words = []
    for i in dates:
        words += i.replace("\n", "").split(" ")  # 用空字符來(lái)代替換行 words +是為了不被覆蓋無(wú)+將只有最后一條數(shù)據(jù)
        # print(i.replace("\n","").split(" "))
    setWords = list(set(words))  # 集合自動(dòng)去重
    num = []  # 統(tǒng)計(jì)一個(gè)單詞出現(xiàn)的次數(shù)
    for k in setWords:
        count = 0
        for j in words:
            if k == j:
                count = count + 1
        num.append(count)
    print(num)
    print(setWords)
    # 輸出
    for x, y in zip(setWords, num):  # 將兩個(gè)列表用zip結(jié)合
        print(x + ":" + str(y))、

    效果圖:

    Python詞頻統(tǒng)計(jì)的方法有哪些

    方法二:

    此方法用來(lái)字典,較前一個(gè)相對(duì)簡(jiǎn)潔一點(diǎn)

    # 導(dǎo)入
    with open("passage.txt", 'r') as file:
        dates = file.readlines()
    # 處理
    words = []
    for i in dates:
        words += i.replace("\n", "").split(" ")
        # print(i.replace("\n","").split(" "))
    # setWords=list(set(words))  #可以不用這個(gè)
    print(words)
    print("-" * 40)
    # print(setWords)
    diccount = dict()
    for i in words:
        if (i not in diccount):
            diccount[i] = 1  # 第一遍字典為空 賦值相當(dāng)于 i=1,i為words里的單詞
            # print(diccount)
        else:
            diccount[i] = diccount[i] + 1  # 等不在里面的全部遍歷一遍賦值就都在里面了,我們?cè)賮?lái)記數(shù)
    print(diccount)

    效果圖:

    Python詞頻統(tǒng)計(jì)的方法有哪些

    統(tǒng)計(jì)的文檔

    Python詞頻統(tǒng)計(jì)的方法有哪些

    關(guān)于“Python詞頻統(tǒng)計(jì)的方法有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

    向AI問(wèn)一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI