python 英语词频统计软件_Python数据挖掘——文本分析
作者 | zhouyue65
來源 | 君泉計(jì)量
文本挖掘:從大量文本數(shù)據(jù)中抽取出有價(jià)值的知識(shí),并且利用這些知識(shí)重新組織信息的過程。
一、語料庫(Corpus)
語料庫是我們要分析的所有文檔的集合。
二、中文分詞
2.1 概念:
中文分詞(Chinese Word Segmentation):將一個(gè)漢字序列切分成一個(gè)一個(gè)單獨(dú)的詞。
eg:我的家鄉(xiāng)是廣東省湛江市-->我/的/家鄉(xiāng)/是/廣東省/湛江市
停用詞(Stop Words):
數(shù)據(jù)處理時(shí),需要過濾掉某些字或詞
√泛濫的詞,如web、網(wǎng)站等。
√語氣助詞、副詞、介詞、連接詞等,如 的,地,得;
2.2 安裝Jieba分詞包:
最簡單的方法是用CMD直接安裝:輸入pip install jieba,但是我的電腦上好像不行。
后來在這里:https://pypi.org/project/jieba/#files下載了jieba0.39解壓縮后 放在Python36Libsite-packages里面,然后在用cmd,pip install jieba 就下載成功了,不知道是是什么原因。
然后我再anaconda 環(huán)境下也安裝了jieba,先在Anaconda3Lib這個(gè)目錄下將jieba0.39的解壓縮文件放在里面,然后在Anaconda propt下輸入 pip install jieba,如下圖:
2.3 代碼實(shí)戰(zhàn):
jieba最主要的方法是cut方法:
jieba.cut方法接受兩個(gè)輸入?yún)?shù):
1) 第一個(gè)參數(shù)為需要分詞的字符串
2)cut_all參數(shù)用來控制是否采用全模式
jieba.cut_for_search方法接受一個(gè)參數(shù):需要分詞的字符串,該方法適合用于搜索引擎構(gòu)建倒排索引的分詞,粒度比較細(xì)
注意:待分詞的字符串可以是gbk字符串、utf-8字符串或者unicode
jieba.cut以及jieba.cut_for_search返回的結(jié)構(gòu)都是一個(gè)可迭代的generator,可以使用for循環(huán)來獲得分詞后得到的每一個(gè)詞語(unicode),也可以用list(jieba.cut(...))轉(zhuǎn)化為list代碼示例( 分詞 )
輸出結(jié)果為: 我 愛
Python
工信處
女干事
每月 經(jīng)過 下屬 科室 都 要 親口
交代
24 口 交換機(jī) 等 技術(shù)性 器件 的 安裝
工作
分詞功能用于專業(yè)的場景:
會(huì)出現(xiàn)真武七截陣和天罡北斗陣被分成幾個(gè)詞。為了改善這個(gè)現(xiàn)象,我們用導(dǎo)入詞庫的方法。
但是,如果需要導(dǎo)入的單詞很多,jieba.add_word()這樣的添加詞庫的方法就不高效了。
我們可以用jieba.load_userdict(‘D:PDM2.2金庸武功招式.txt’)方法一次性導(dǎo)入整個(gè)詞庫,txt文件中為每行一個(gè)特定的詞。
2.3.1 對大量文章進(jìn)行分詞
先搭建語料庫:
分詞后我們需要對信息處理,就是這個(gè)分詞來源于哪個(gè)文章。
四、詞頻統(tǒng)計(jì)
3.1詞頻(Term Frequency):
某個(gè)詞在該文檔中出現(xiàn)的次數(shù)。
3.2利用Python進(jìn)行詞頻統(tǒng)計(jì)
3.2.1 移除停用詞的另一種方法,加if判斷
代碼中用到的一些常用方法:
分組統(tǒng)計(jì):
判斷一個(gè)數(shù)據(jù)框中的某一列的值是否包含一個(gè)數(shù)組中的任意一個(gè)值:
取反:(對布爾值)
四、詞云繪制
詞云(Word Cloud):是對文本中詞頻較高的分詞,給與視覺上的突出,形成“關(guān)鍵詞渲染”,從而國旅掉大量的文本信息,使瀏覽者一眼掃過就可以領(lǐng)略文本的主旨。
4.1 安裝詞云工具包
這個(gè)地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/ ,可以搜到基本上所有的Python庫,進(jìn)去根據(jù)自己的系統(tǒng)和Python的版本進(jìn)行下載即可。
在python下安裝很方便,在anaconda下安裝費(fèi)了點(diǎn)勁,最終將詞云的文件放在C:甥敳獲Administrator 這個(gè)目錄下才安裝成功。
五、美化詞云(詞云放入某圖片形象中)
六、關(guān)鍵詞提取
結(jié)果如下:
七、關(guān)鍵詞提取實(shí)現(xiàn)
詞頻(Term Frequency):指的是某一個(gè)給定的詞在該文檔中出現(xiàn)的次數(shù)。
計(jì)算公式: TF = 該次在文檔中出現(xiàn)的次數(shù)
逆文檔頻率(Inverse Document Frequency):IDF就是每個(gè)詞的權(quán)重,它的大小與一個(gè)詞的常見程度成反比
計(jì)算公式:IDF = log(文檔總數(shù)/(包含該詞的文檔數(shù) - 1))
TF-IDF(Term Frequency-Inverse Document Frequency):權(quán)衡某個(gè)分詞是否關(guān)鍵詞的指標(biāo),該值越大,是關(guān)鍵詞的可能性就越大。
計(jì)算公式:TF - IDF = TF * IDF
7.1文檔向量化
7.2代碼實(shí)戰(zhàn)
總結(jié)
以上是生活随笔為你收集整理的python 英语词频统计软件_Python数据挖掘——文本分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php多选批量修改数据库数据类型有哪些_
- 下一篇: 语言怎么把横的光标变成竖的_想练字,先会