python實現詞頻統計

weixin_42644872發表於2020-12-08

可以通過構建自定義函式實現python詞頻統計

def countAllWord(strlist):#輸入列表,輸出列表中詞頻
    cutlist=[]
    for i in strlist:
        word=jieba.cut(i,cut_all=False)
        cutlist.append(" ".join(word))#存放分詞結果
    cut_str=" ".join(cutlist)#將分詞結果展開為字串
    cutlist2=list(cut_str.split())#將各個詞都轉換為列表中的元素
    report={}#定義字典存放詞頻
    for i in cutlist2:
        if i in report:#如果字典已有鍵值,則其值加1;沒有則新增鍵值並定義其值為1
            report[i]=report[i]+1
        else:
            report[i]=1
    return report

測試結果:

text1=['非常非常不錯','特別特別好']
text2=['a','a','a','b','b','b','c','d','c']
print(countAllWord(text1))#{'非常': 2, '不錯': 1, '特別': 2, '好': 1}
print(countAllWord(text2))#{'a': 3, 'b': 3, 'c': 2, 'd': 1}

相關文章