導航:首頁 > 編程語言 > python停用詞庫

python停用詞庫

發布時間:2024-01-01 10:28:07

A. python 中文切詞使用停用詞表問題


python中最好不要在list遍歷中使用list.remove方法:

建議使用新的list存儲要保留的內容,然後返回這個新list。比如

a_list=[1,2,3,4,5]
needs_to_be_removed=[3,4,5]
result=[]
forvina_list:
ifvnotinneeds_to_be_removed:
result.append(v)
printresult



B. python 結巴分詞 停用詞庫

ifwnotinstopword:
#改為
ifw.wordnotinstopword.keys():
#試試

C. Python豆瓣電影《肖申克的救贖》評論爬取

先看效果圖:

地址:( https://movie.douban.com/subject/1292052/comments?sort=time&status=P)

爬取前1w條評論

存儲成txt文檔

數據預處告攜理

中文分詞

統計top10的高頻詞

可視化展示高頻詞

根據詞頻生成詞雲

審核評論

================================================================

配置准備

中文分詞需要jieba

詞雲繪制需要wordcloud

可視化展示中需要的中文字體

網上公開資源中找一個中咐桐文停用詞表

根據分詞結果自己製作新增詞襪簡伏表

准備一張詞雲背景圖(附加項,不做要求)

paddlehub配置

#安裝jieba分詞和詞雲

pip install jieba

pip install wordcloud

#安裝paddle

pip install --upgrade PaddlePaddle

#安裝模型

#hub install porn_detection_lstm==1.1.0

pip install --upgrade paddlehub

pip install  numpy

#安裝Beautifulsoup

pip install BeautifulSoup4

Github地址: https://github.com/mikite/python_sp_shawshank

有可能遇到的問題:

1.UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe8 in position 1: invalid continuation byte

解決方法:

1.不使用urlLib換做requests

2.去掉請求頭中的 'Accept-Encoding': 'gzip, deflate, br'

3.返回值reponse 轉字元串指定編碼utf-8

# 'Accept-Encoding': 'gzip, deflate, br',

2.關於cookie

解決方法:

1.去豆瓣請求頭中復制cookie設置到請求頭中

'Cookie': 'bid=WD6_t6hVqgM'

3.請求返回418的問題

解決方案模擬設置請求頭,設置user-agent

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36',

4.使用beautifulsoup獲取不到評論

解決方法:

第一步:指定解析參數為'lxml'

soupComment = BeautifulSoup(html, 'lxml')

第二步:

findAll方法指定css文件的class名

print('網頁內容:', soupComment.prettify())

comments = soupComment.findAll(class_='short')

點擊獲取源碼

D. python jieba停用詞該如何設置

你把你的停用詞排一下序,然後再給結巴看看。
或者加兩個停用詞,一個河北、一個西南部。
停用詞通常是很短的高頻出現的詞語,真實情況你這樣的不多。
如果你這種情況,不妨先分詞,也不去停用詞。
然後自己再來後續處理。

E. python 怎麼向textblob中加停用詞

把語料從資料庫提取出來以後就要進行分詞啦,我是在linux環境下做的,先把jieba安裝好,然後找到內容是build jieba PKG-INFO setup.py test的那個文件夾(我這邊是jieba-0.38),把自己的自定義詞典(選用,目的是為了分出原始詞庫中沒有的詞以及優先分出一些詞),停用詞詞典(選用),需要分詞的語料文件,調用jieba的python程序都放到這個文件夾里,就可以用啦。至於詞典要什麼樣的格式,在網上一查就可以了。

之前有看到別的例子用自定義詞典替換掉jieba本身詞典,但是我試了一下好像效果不行,假設原始詞典中有』雲『,』計算『而沒有』雲計算『,我想要分出』雲計算『這個詞,載入自定義詞典可以成功,但替換原始詞典就不一定成功了。(當然我說的也不一定對)

還有停用詞詞典,我之前是把停用詞在程序里存入一個列表,然後分每個詞時都循環一遍列表,這樣特別浪費時間。後來把停用詞做成字典就很快了。

for eachline in fin可避免memory error。如果還是報memory error,那應該就是輸入語料文件單行數據多長了。

#!/usr/bin/python #-*- encoding:utf-8 -*- import jieba #導入jieba模塊import re
jieba.load_userdict("newdict.txt") #載入自定義詞典 import jieba.posseg as pseg

def splitSentence(inputFile, outputFile): #把停用詞做成字典
stopwords = {}
fstop = open('stop_words.txt', 'r') for eachWord in fstop:
stopwords[eachWord.strip().decode('utf-8', 'ignore')] = eachWord.strip().decode('utf-8', 'ignore')
fstop.close()

fin = open(inputFile, 'r') #以讀的方式打開文件
fout = open(outputFile, 'w') #以寫得方式打開文件
jieba.enable_parallel(4) #並行分詞
for eachLine in fin:
line = eachLine.strip().decode('utf-8', 'ignore') #去除每行首尾可能出現的空格,並轉為Unicode進行處理
line1 = re.sub("[0-9s+.!/_,$%^*()?;;:-【】+"']+|[+——!,;:。?、~@#¥%……&*()]+".decode("utf8"), "".decode("utf8"),line)
wordList = list(jieba.cut(line1)) #用結巴分詞,對每行內容進行分詞
outStr = ''
for word in wordList: if word not in stopwords:
outStr += word
outStr += ' '
fout.write(outStr.strip().encode('utf-8') + ' ') #將分詞好的結果寫入到輸出文件 fin.close()
fout.close()

splitSentence('ss.txt', 'tt.txt')

F. python數據挖掘——文本分析

作者 | zhouyue65

來源 | 君泉計量

文本挖掘:從大量文本數據中抽取出有價值的知識,並且利用這些知識重新組織信息的過程。

一、語料庫(Corpus)

語料庫是我們要分析的所有文檔的集合。

二、中文分詞

2.1 概念:

中文分詞(Chinese Word Segmentation):將一個漢字序列切分成一個一個單獨的詞。

eg:我的家鄉是廣東省湛江市-->我/的/家鄉/是/廣東省/湛江市

停用詞(Stop Words):

數據處理時,需要過濾掉某些字或詞

√泛濫的詞,如web、網站等。

√語氣助詞、副詞、介詞、連接詞等,如 的,地,得;

2.2 安裝Jieba分詞包:

最簡單的方法是用CMD直接安裝:輸入pip install jieba,但是我的電腦上好像不行。

後來在這里:https://pypi.org/project/jieba/#files下載了jieba0.39解壓縮後 放在Python36Libsite-packages裡面,然後在用cmd,pip install jieba 就下載成功了,不知道是是什麼原因。

然後我再anaconda 環境下也安裝了jieba,先在Anaconda3Lib這個目錄下將jieba0.39的解壓縮文件放在裡面,然後在Anaconda propt下輸入 pip install jieba,如下圖:

2.3 代碼實戰:

jieba最主要的方法是cut方法:

jieba.cut方法接受兩個輸入參數:

1) 第一個參數為需要分詞的字元串

2)cut_all參數用來控制是否採用全模式

jieba.cut_for_search方法接受一個參數:需要分詞的字元串,該方法適合用於搜索引擎構建倒排索引的分詞,粒度比較細

注意:待分詞的字元串可以是gbk字元串、utf-8字元串或者unicode

jieba.cut以及jieba.cut_for_search返回的結構都是一個可迭代的generator,可以使用for循環來獲得分詞後得到的每一個詞語(unicode),也可以用list(jieba.cut(...))轉化為list代碼示例( 分詞 )

輸出結果為: 我 愛

Python

工信處

女幹事

每月 經過 下屬 科室 都 要 親口

交代

24 口 交換機 等 技術性 器件 的 安裝

工作

分詞功能用於專業的場景:

會出現真武七截陣和天罡北斗陣被分成幾個詞。為了改善這個現象,我們用導入詞庫的方法。

但是,如果需要導入的單詞很多,jieba.add_word()這樣的添加詞庫的方法就不高效了。

我們可以用jieba.load_userdict(『D:PDM2.2金庸武功招式.txt』)方法一次性導入整個詞庫,txt文件中為每行一個特定的詞。

2.3.1 對大量文章進行分詞

先搭建語料庫:

分詞後我們需要對信息處理,就是這個分詞來源於哪個文章。

四、詞頻統計

3.1詞頻(Term Frequency):

某個詞在該文檔中出現的次數。

3.2利用Python進行詞頻統計

3.2.1 移除停用詞的另一種方法,加if判斷

代碼中用到的一些常用方法:

分組統計:

判斷一個數據框中的某一列的值是否包含一個數組中的任意一個值:

取反:(對布爾值)

四、詞雲繪制

詞雲(Word Cloud):是對文本中詞頻較高的分詞,給與視覺上的突出,形成「關鍵詞渲染」,從而國旅掉大量的文本信息,使瀏覽者一眼掃過就可以領略文本的主旨。

4.1 安裝詞雲工具包

這個地址:https://www.lfd.uci.e/~gohlke/pythonlibs/ ,可以搜到基本上所有的Python庫,進去根據自己的系統和Python的版本進行下載即可。

在python下安裝很方便,在anaconda下安裝費了點勁,最終將詞雲的文件放在C:UsersAdministrator 這個目錄下才安裝成功。

五、美化詞雲(詞雲放入某圖片形象中)

六、關鍵詞提取

結果如下:

七、關鍵詞提取實現

詞頻(Term Frequency):指的是某一個給定的詞在該文檔中出現的次數。

計算公式: TF = 該次在文檔中出現的次數

逆文檔頻率(Inverse Document Frequency):IDF就是每個詞的權重,它的大小與一個詞的常見程度成反比

計算公式:IDF = log(文檔總數/(包含該詞的文檔數 - 1))

TF-IDF(Term Frequency-Inverse Document Frequency):權衡某個分詞是否關鍵詞的指標,該值越大,是關鍵詞的可能性就越大。

計算公式:TF - IDF = TF * IDF

7.1文檔向量化

7.2代碼實戰

G. python jieba分詞如何去除停用詞

-*- coding: utf-8 -*-
import jieba
import jieba.analyse
import sys
import codecs
reload(sys)
sys.setdefaultencoding('utf-8')

#使用其他編碼讀取停用詞表
#stoplist = codecs.open('../../file/stopword.txt','r',encoding='utf8').readlines()
#stoplist = set(w.strip() for w in stoplist)
#停用詞文件是utf8編碼
stoplist = {}.fromkeys([ line.strip() for line in open("../../file/stopword.txt") ])

#經過分詞得到的應該是unicode編碼,先將其轉成utf8編碼

閱讀全文

與python停用詞庫相關的資料

熱點內容
如何讓安卓手機操控電腦 瀏覽:185
電腦電銷加密電話號碼破解 瀏覽:505
世界史綱pdf 瀏覽:133
湖北社保年審app叫什麼名字 瀏覽:852
邁達克雲伺服器 瀏覽:597
mfc深入淺出從mfc設計到mfc編程 瀏覽:81
螢石雲伺服器連接設置 瀏覽:325
中國名著pdf 瀏覽:592
華為伺服器設備序列號怎麼看 瀏覽:319
跑永輝生活配送用什麼app 瀏覽:149
ug識別符號命令在哪裡 瀏覽:719
pdf文件改文字 瀏覽:732
查詢qq號劍靈伺服器地址 瀏覽:552
國家反詐中心app為什麼要刷臉 瀏覽:303
iphone怎麼修改dns伺服器地址 瀏覽:85
bandizip解壓位置 瀏覽:168
伺服器的防火牆如何訪問 瀏覽:306
javagoto關鍵字 瀏覽:847
廣州少兒編程加盟排名榜 瀏覽:122
51單片機th0 瀏覽:294