# -*- coding:utf-8 -*-
# @Author : chenfei
# @time : 2020/10/23 15:30
# @File : 讀取word統計詞頻輸出excel.PY
# @Software : PyCharm
import docx
import jieba
from collections import Counter
import pandas as pd
document =docx.Document(r'D:\免安裝使用\WeChatDownload v20200423\曹政的夢囈合集10.docx')
content = ' '.join([para.text for para in document.paragraphs])
print(len(content))
# print(content[0:100])
# 中文分詞
seg_list = jieba.cut(content,cut_all=False)
print(type(seg_list))
# 過濾標點符號、無意義的單個字
seg_list = [word for word in seg_list if len(word)>1]
# print(seg_list[:30])
# 統計詞頻
counter = Counter(seg_list)
# # 輸出前10個
# for key,count in list(counter.items())[:10]:
# print(key,count)
# 構造pandas
df = pd.DataFrame(list(counter.items()),columns=['word','count'])
# print(df.head()) # 輸出前5行
#排序
df.sort_values(by='count',ascending=False,inplace=True)
print(df.head())
# 輸出excel
df.to_excel('分析結果-詞頻數據.xlsx',index=False)