這篇“怎么使用Python的sklearn中的CountVectorizer”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“怎么使用Python的sklearn中的CountVectorizer”文章吧。
站在用戶的角度思考問題,與客戶深入溝通,找到潤州網(wǎng)站設(shè)計與潤州網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設(shè)計、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋潤州地區(qū)。
CountVectorizer官方文檔。
將一個文檔集合向量化為為一個計數(shù)矩陣。
如果不提供一個先驗字典,不使用分析器做某種特征選擇,那么特征的數(shù)量將等于通過分析數(shù)據(jù)發(fā)現(xiàn)的詞匯量。
兩種方法:1.可以不分詞直接投入模型;2.可以先將中文文本進(jìn)行分詞。
兩種方法產(chǎn)生的詞匯會非常不同。在后面會具體給出示范。
import jieba import re from sklearn.feature_extraction.text import CountVectorizer #原始數(shù)據(jù) text = ['很少在公眾場合手機(jī)外放', '大部分人都還是很認(rèn)真去學(xué)習(xí)的', '他們會用行動來', '無論你現(xiàn)在有多頹廢,振作起來', '只需要一點點地改變', '你的外在和內(nèi)在都能煥然一新'] #提取中文 text = [' '.join(re.findall('[\u4e00-\u9fa5]+',tt,re.S)) for tt in text] #分詞 text = [' '.join(jieba.lcut(tt)) for tt in text] text
#構(gòu)建模型 vectorizer = CountVectorizer() #訓(xùn)練模型 X = vectorizer.fit_transform(text)
#所有文檔匯集后生成的詞匯 feature_names = vectorizer.get_feature_names() print(feature_names)
不分詞生成的詞匯
分詞后生成的詞匯
#每個文檔相對詞匯量出現(xiàn)次數(shù)形成的矩陣 matrix = X.toarray() print(matrix)
#計數(shù)矩陣轉(zhuǎn)化為DataFrame df = pd.DataFrame(matrix, columns=feature_names) df
print(vectorizer.vocabulary_)
以上就是關(guān)于“怎么使用Python的sklearn中的CountVectorizer”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。