jieba分詞學習

1、分詞數(shù)據(jù)源
基于之前采集公共管理學院老師的數(shù)據(jù),一共得到10個字段。本次分詞是對大文本字段進行分詞,因此將所得到的老師的數(shù)據(jù)去掉5個基本字段,對簡介(intro)、研究成果(output)、獲獎情況(award)、科研項目(project)、人才培養(yǎng)(training)5個大文本字段進行分詞,最終制作詞云圖,本次制作詞云圖利用的工具為tagxedo-creator,這是一個在線制作詞云圖的工具,可以對中文數(shù)據(jù)進行統(tǒng)計分析。

數(shù)據(jù)示例.png

將上次采集的老師的數(shù)據(jù)保存為csv格式的文件,刪除基本信息的5列,在將csv文件另存為txt格式,在利用jieba分詞可直接導入需分詞的txt數(shù)據(jù)文檔。

2、jieba學習
基于jieba的教程,嘗試了相關代碼的測試。
首先,安裝jieba:pip install jieba
在venv下創(chuàng)建jieba文件夾,編寫test1.py

# encoding=utf-8
from __future__ import print_function, unicode_literals
import sys
sys.path.append("../")
import jieba
jieba.load_userdict("/root/venv/jieba/userdict.txt")
import jieba.posseg as pseg

jieba.add_word('石墨烯')
jieba.add_word('凱特琳')
jieba.del_word('自定義詞')

test_sent = (
"李小福是創(chuàng)新辦主任也是云計算方面的專家; 什么是八一雙鹿\n"
"例如我輸入一個帶“韓玉賞鑒”的標題,在自定義詞庫中也增加了此詞為N類\n"
"「臺中」正確應該不會被切開。mac上可分出「石墨烯」;此時又可以分出來凱特琳了。"
)
words = jieba.cut(test_sent)
print('/'.join(words))

print("="*40)

result = pseg.cut(test_sent)

for w in result:
    print(w.word, "/", w.flag, ", ", end=' ')

print("\n" + "="*40)

terms = jieba.cut('easy_install is great')
print('/'.join(terms))
terms = jieba.cut("python 的正則表達式是好用的")
print('/'.join(terms))

print("="*40)
# test frequency tune
testlist = [
('今天天氣不錯', ('今天', '天氣')),
('如果放到post中將出錯。', ('中', '將')),
('我們中出了一個叛徒', ('中', '出')),
]

for sent, seg in testlist:
    print('/'.join(jieba.cut(sent, HMM=False)))
    word = ''.join(seg)
    print('%s Before: %s, After: %s' % (word, jieba.get_FREQ(word), jieba.suggest_freq(seg, True)))
    print('/'.join(jieba.cut(sent, HMM=False)))
    print("-"*40)

運行結果:(python "/root/venv/jieba/test1.py")


分詞示例結果.png

知識點:
jieba.cut 方法接受三個輸入?yún)?shù): 需要分詞的字符串;cut_all 參數(shù)用來控制是否采用全模式(默認為精確模式);HMM 參數(shù)用來控制是否使用 HMM 模型。
jieba.cut_for_search 方法接受兩個參數(shù):需要分詞的字符串;是否使用 HMM 模型。該方法適合用于搜索引擎構建倒排索引的分詞,粒度比較細。
jieba.load_userdict(file_name) # file_name 為文件類對象或自定義詞典的路徑。
使用 add_word(word, freq=None, tag=None) 和 del_word(word) 可在程序中動態(tài)修改詞典。
使用 suggest_freq(segment, tune=True) 可調(diào)節(jié)單個詞語的詞頻,使其能(或不能)被分出來。

3、教師數(shù)據(jù)分詞
test3.py:

# encoding=utf-8
from __future__ import print_function, unicode_literals
import sys
sys.path.append("../")
import jieba
jieba.load_userdict("/root/venv/jieba/userdict2.txt")
import jieba.posseg as pseg
import jieba.analyse as anl
import re
import codecs

#導入停用詞表
stopwords = {}.fromkeys([ line.rstrip() for line in open('/root/venv/jieba/stopwordlist.txt') ])

def seg_sentence(sentence):
    wordList = jieba.cut(sentence.strip())
    outstr = ''
    for word in wordList:
        if word not in stopwords:
            if len(word) > 1:  # 去掉長度小于1的詞
                if word != '\t':
                    outstr += word
                    outstr += "/"
    return outstr


infile = open('/root/venv/jieba/content_detail.txt', 'r')
outfile = open('/root/venv/jieba/result3_2.txt', 'w')
for line in infile:
    line_seg = seg_sentence(line)  
    outfile.write(line_seg.encode('utf-8'))
outfile.close()
infile.close()

userdict2.txt:

補充中
四川大學

stopwordlist.txt:

!
"
#
$
%
&
'
(
)
*
+
,
-
--
.
..
...
......
...................
./
.一
記者
數(shù)
年
月
日
時
分
秒
/
//
的
training
,
award
project
intro
output

content_detail.txt:(部分)

    姜曉萍教授先后承擔公共行政、公共政策、行政法學、中國政府與政治、地方政府創(chuàng)新等課程。曾獲全國高?;粲|教育基金優(yōu)秀青年教師獎,四川省教學名師、四川省優(yōu)秀教學成果一等獎等。

          ","
             ?1、2016年獲教育部長江學者獎勵計劃特聘教授

    2、2015年獲寶鋼優(yōu)秀教師獎


    3、2014年獲國家哲學社會科學成果文庫


    4、2014年獲四川省第十六次哲學社會科學優(yōu)秀成果一等獎、二等獎


    5、2014年獲四川省第七屆高等教育教學成果獎二等獎


    6、2013年第六屆高等學??茖W研究優(yōu)秀成果獎三等獎


    7、2012年四川大學優(yōu)秀教材獎二等獎


    8、2012年四川大學教學成果一等獎


    9、2010年獲第五屆“四川杰出創(chuàng)新人才獎”


    10、2010年獲四川省第六屆高等教育教學成果獎三等獎


    11、2010年獲四川省第十四次哲學社會科學優(yōu)秀成果二等獎


    12、2009年獲四川省教學名師獎


    13、2008年獲中國行政管理學會第四屆行政管理科學優(yōu)秀成果二等獎

result3_2.txt:(部分)

補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/補充中/姜曉萍/教授/先后/承擔/公共行政/公共政策/行政法學/中國政府/政治/地方/政府/創(chuàng)新/課程/全國/高校/霍英東/教育/基金/優(yōu)秀青年/教師/四川省/教學/名師/四川省/優(yōu)秀/教學/成果/一等獎/2016/教育部/長江/學者/獎勵/計劃/特聘/教授/2015/寶鋼/優(yōu)秀教師/2014/國家/哲學/社會科學/成果/文庫/2014/四川省/第十六次/哲學/社會科學/優(yōu)秀成果/一等獎/二等獎/2014/四川省/第七屆/高等教育/教學/成果獎/二等獎/2013/第六屆/高等學校/科學研究/優(yōu)秀/成果獎/三等獎/2012/四川大學/優(yōu)秀/教材/二等獎/2012/四川大學/教學/成果/一等獎/2010/第五屆/四川/杰出/創(chuàng)新/人才/10/2010/四川省/第六屆/高等教育/教學/成果獎/三等獎/11/2010/四川省/第十四次/哲學/社會科學/優(yōu)秀成果/二等獎/12/2009/四川省/教學/名師/13/2008/中國/行政管理學/第四屆/行政/管理科學/優(yōu)秀成果/二等獎/14/2008/四川省/第十三次/哲學/社會科學/優(yōu)秀成果/二等獎/15/2008/四川省/教育廳/人文/社科/一等獎/16/2007/四川省/第十二次/哲學/社會科學/優(yōu)秀成果/三等獎/17/2006/成都市/第八次/哲學/社會科學/優(yōu)秀成果/二等獎/18/2005/四川省/優(yōu)秀/教學/成果/一等獎/19/2005/四川省/第十一次/哲學/社會科學/優(yōu)秀成果/三等獎/20/2005/建設/成都/杰出/貢獻獎/21/2004/四川省/教育廳/第五屆/人文/社科/優(yōu)秀/科研成果/二等獎/22/2004/四川省/第四屆/政務/調(diào)研/二等獎/23/2004/第十二屆/嬌子/成都/十杰/青年/稱號/24/2004/四川省/哲學/社會科學/優(yōu)秀成果/三等獎/25/2003/中國/行政管理學/優(yōu)秀論文/26/2003/中國/行政管理學/2003/優(yōu)秀論文/其他/27/1998/全國/高校/霍英東/教育/基金/青年教師/主持/科研項目/主持/國家/社科/基金/重大項目/深化/干部

4、制作詞云圖(tagxedo-creator)
導入分詞文件:

導入文件.png

可以看到在旁邊的菜單欄進行顏色、形狀、字體等的調(diào)整。

去掉無用的詞:


去掉無用的詞.png

詞云圖:

分詞詞云圖.jpg
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 注:參考文檔 一、在線詞云圖工具# (1)、使用### 在正式使用jieba分詞之前,首先嘗試用在線分詞工具來將自...
    DearIreneLi閱讀 6,384評論 1 8
  • 關鍵詞:windows平臺下jieba安裝、三種模式比較、自定義詞典、停用詞語料、詞頻統(tǒng)計、詞云生成 jieba簡...
    秋燈鎖憶閱讀 4,676評論 0 2
  • 大名鼎鼎的Jieba分詞貌似在工業(yè)界被使用的頻率較高,所以研究一下它的實現(xiàn)吧。據(jù)作者在github文檔上的介紹,J...
    bellengao閱讀 1,029評論 0 6
  • 【0629今日話題】 你曾經(jīng)迷茫過嗎?是怎么走出來的呢? (話題來自貓友狗富貴) 每隔幾年就會感到迷茫,最近找到了...
    順水順風閱讀 114評論 2 2
  • 印度演員阿米爾.汗的作品部部精彩,《三傻》《地球上的星星》《我的個神啊》《未知死亡》......都是經(jīng)典之作。他的...
    Yronger閱讀 476評論 0 3

友情鏈接更多精彩內(nèi)容