[Text Mining]JIEBA介紹與教學-Part1 - - 點部落

文章推薦指數: 80 %
投票人數:10人

... 回饋者給予之意見。

此篇會介紹我使用JIEBA之心得。

... 先前作業安裝nltk與jieba ... 寫法:jieba.cut_for_search(Content). 示範例子: TextMiningProject,主要是再於分析競爭對手優缺點,並了解同產品項目中,回饋者給予之意見。

此篇會介紹我使用JIEBA之心得。

#方法 演算法部分,網路很多分享,在此就不作介紹 #程式語言 Python #先前作業 安裝nltk與jieba pipinstalljieba pipinstallnltk #程式碼 #-*-coding:utf-8-*- importnltk importjieba importjieba.possegaspseg importcodecs fromnltk.corpusimportstopwords jieba.set_dictionary('/dict.txt')**#引用預設詞庫** stop=stopwords.words('/chinese.txt')**#引用停用詞** content=codecs.open('D:/Comment.txt','rU','utf-8').read()**#開啟你要斷詞之檔案1** myfile=codecs.open(r'D:/output_file.txt','w','utf-8')**#將結果寫入檔案2** words=jieba.cut(content,cut_all=False) forword,flaginwords: ifwordnotinstop: myfile.write('%s%s'%(word,flag)+'\n') myfile.close()  #程式碼解說          words=jieba.cut(content,cut_all=False) Cut可以當成切割文字的意思(就是分詞拉) 結巴中文分詞支持的三種分詞模式包括:   1.精確模式:將句子最精確地切開,叫適合文本分析。

    寫法:words=jieba.cut(content,cut_all=False)   2.全模式:把句子中所有的可以成詞的詞語都掃描出來,速度快。

    寫法:words=jieba.cut(content,cut_all=True)   3.搜索引勤模式:在精確模式的基礎上對長詞再次切分,提高召回率,適合用於搜尋引擎分詞。

                                                                 寫法:jieba.cut_for_search(Content) 示範例子: #encoding=utf-8 importjieba #jieba.set_dictionary('D:/dict.txt') jieba.load_userdict('D:/user_dict.txt') Sentence=jieba.cut("我要成為神奇寶貝大師",cut_all=True) print(u'全模式'+":"+"/".join(Sentence)) Sentence=jieba.cut("我要成為神奇寶貝大師",cut_all=False) print(u'精確模式'+":"+"/".join(Sentence)) Sentence=jieba.cut("我要成為神奇寶貝大師") print(u'Default為精確模式'+":"+"/".join(Sentence)) Sentence=jieba.cut_for_search("我要成為神奇寶貝大師") print(u'搜索引擎模式'+":"+"/".join(Sentence)) Output: 全模式:我/要/成/為/神奇/神奇寶貝/大/師 精確模式:我要/成為/神奇寶貝/大師 Default為精確模式:我要/成為/神奇寶貝/大師 搜索引擎模式:我要/成為/神奇/神奇寶貝/大師  jieba.set_dictionary('D:/dict.txt')  =>為jieba預設詞庫                                                                                                                                                                                                                                      jieba.load_userdict('D:/user_dict.txt')   =>為使用者定義詞庫     若使用預設詞庫,結果如下: 全模式:我/要/成/為/神奇/寶/貝/大/師 精確模式:我要/成為/神奇/寶貝大師 Default為精確模式:我要/成為/神奇/寶貝大師 搜索引擎模式:我要/成為/神奇/寶貝大師 有發現差異性了嗎?神奇寶貝在預設詞庫下,被切割掉了。

但是我在定義詞庫裡增加了"神奇寶貝"的新詞,因此可以順利幫我正確的分詞,產生我想要的結果。

       詞典格式和dict.txt一樣,一個詞佔一行;每一行分三部分:詞語、​​詞頻(可省略)、詞性(可省略),用空格隔開,順序不可顛倒。

 *注意:文檔必須為UTF-8編碼。

一定有人會覺得說:還要自己手動增加新詞會不會太麻煩了?  在做這案子時,由於資料來源都大陸使用者的留言,慣用語、流行語都和台灣不同,原先預設詞庫無法去準確的分詞 雖然jieba有新詞識別能力,但是自行添加新詞可以保證更高的正確率,因此這提供詞庫網址,方便大家來增加自己的詞庫 1.QQ詞庫平台 2.搜狗詞庫 回首頁



請為這篇文章評分?