需求分析
使用' jieba.analyse.extract_tags() '提取文檔的關鍵詞
開發(fā)環(huán)境
系統(tǒng): macOS Sierra; 開發(fā)軟件: PyChram CE; 運行環(huán)境: Python3.6
-
首先導入需要用到的包
import os
import codecs
import jieba
from jieba import analyse
import pandas
-
使用 jieba.analyse.extract_tags(content, topK=5)提取前五個關鍵詞
這個模塊除了多了 jieba.analyse.extract_tags(content, topK=5
這個提取關鍵詞的函數(shù)外,其余內(nèi)容同上一篇 詞頻統(tǒng)計 - 詞云繪制中的‘創(chuàng)建語料庫’模塊相同
filePaths = []
fileContents = []
tag1s = []
tag2s = []
tag3s = []
tag4s = []
tag5s = []
for root, dirs, files in os.walk(
'data/SogouC.mini/Sample'
):
for name in files:
filePath = os.path.join(root, name)
f = codecs.open(filePath, 'r', 'utf-8')
content = f.read().strip() # 獲取內(nèi)容
f.close()
tags = jieba.analyse.extract_tags(content, topK=5)# 采用jieba.analyse.extrack_tags(content, topK)提取關鍵詞
filePaths.append(filePath)
fileContents.append(content)
tag1s.append(tags[0]) # 第一個關鍵詞
tag2s.append(tags[1]) # 第二個關鍵詞
tag3s.append(tags[2]) # 第三個關鍵詞
tag4s.append(tags[3]) # 第四個關鍵詞
tag5s.append(tags[4]) # 第五個關鍵詞
-
定義一個DataFrame用于存儲 - 文件路徑,文件內(nèi)容和每個文件對應的前五個關鍵詞
# 定義一個DataFrame存儲 - 文件路徑,文件內(nèi)容和每個文件對應的前五個關鍵詞
tagDF = pandas.DataFrame({
'filePath': filePaths,
'fileContent': fileContents,
'tag1': tag1s,
'tag2': tag2s,
'tag3': tag3s,
'tag4': tag4s,
'tag5': tag5s,
})
print(tagDF.head())
運行結果如下:(只顯示前五行)
關鍵詞提取.png