1. 程式人生 > >用python統計文章單詞詞頻

用python統計文章單詞詞頻

import re

with open("text.txt") as f:
    #讀取檔案中的字串
    txt = f.read()
    #去除字串中的標點、數字等
    txt = re.sub('[,\.()":;[email protected]#$%^&*\d]|\'s|\'', '', txt)
    #替換換行符,大小寫轉換,拆分成單詞列表
    word_list = txt.replace('\n',' ').replace('  ',' ').lower().split(' ')
    word_count_dict = {}

    for
word in word_list: #統計字典中的詞頻 if word in word_count_dict.keys(): word_count_dict[word] += 1 else: word_count_dict[word] =1 #按照單詞出現次數排序 word_count_dict = sorted(word_count_dict.items(), key=lambda x:x[1], reverse=True) #輸出到檔案 with open("word_count.txt"
, 'w')as f1: for i in word_count_dict: f1.write("%s\t%s\n" %(i[0],str(i[1])))

結果大概就是這樣子了:

the	8
to	6
a	6
has	3
us	2
criminal	2
subpoenas	2
president	2

發現還有很多不完善的地方,在後續的學習中再改進!