亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python自然語言處理停用詞過濾實(shí)例詳解

 更新時(shí)間:2024年01月17日 10:28:10   作者:李元靜  
這篇文章主要為大家介紹了Python自然語言處理停用詞過濾實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

什么是停用詞

在漢語中,有一類沒有多少意義的詞語,比如組詞“的”,連詞“以及”、副詞“甚至”,語氣詞“吧”,被稱為停用詞。一個(gè)句子去掉這些停用詞,并不影響理解。所以,進(jìn)行自然語言處理時(shí),我們一般將停用詞過濾掉。

而HanLP庫提供了一個(gè)小巧的停用詞字典,它位于Lib\site-packages\pyhanlp\static\data\dictionary目錄中,名字為:stopwords.txt。該文本收錄了常見的中英文無意義的詞匯,每行一個(gè)詞語。示例如下:


我們在進(jìn)行自然語言處理時(shí),可以用BinTrie、DoubleArrayTrie和AhoCorasickDoubleArrayTrie中的任意一個(gè)來存儲(chǔ)詞典。考慮到該詞典中都是短語且比較多,用雙數(shù)組字典樹更劃算,處理時(shí)間更快。

加載停用詞字典

通過前文的介紹,我們知道了使用雙數(shù)組字典樹加載停用詞字典更劃算。下面,我們來加載其停用詞,并返回鍵值對結(jié)構(gòu)。代碼如下:

def load_dictionary(path): map=JClass('java.util.TreeMap')() with open(path,encoding='utf-8') as src: for word in src: word=word.strip() map[word]=word return JClass('com.hankcs.hanlp.collection.trie.DoubleArrayTrie')(map)

刪除停用詞

通過上面的停用詞加載,我們獲取了DoubleArrayTrie樹結(jié)構(gòu)的詞匯。如果要?jiǎng)h除停用詞,可以直接使用分詞后的結(jié)果剔除停用詞即可。剔除的方法如下:

def remove_stopwords(termlist,trie): return [term.word for term in termlist if not trie.containsKey(term.word)]

分詞以及刪除停用詞

在前面的博文中,我們已經(jīng)學(xué)會(huì)了如何分詞,現(xiàn)在我們又學(xué)會(huì)了如何剔除停用詞。這里,我們將兩者結(jié)合起來,實(shí)現(xiàn)分詞效果。代碼如下:

if __name__ == "__main__": HanLP.Config.ShowTermNature=False trie=load_dictionary(HanLP.Config.CoreStopWordDictionaryPath) text="今天就這樣吧!明天我們在說可以嗎?" segment=DoubleArrayTrieSegment() termlist=segment.seg(text) print("分詞結(jié)果",termlist) print("去掉停用詞",remove_stopwords(termlist,trie))

運(yùn)行之后,得到如下結(jié)果:

直接刪除停用詞(不分詞)

對應(yīng)上面的結(jié)果,我們先分詞在刪除停用詞。但是,有時(shí)候我們也喜歡先刪除停用詞在進(jìn)行分詞。下面,我們來實(shí)現(xiàn)直接刪除停用詞。

代碼如下:

#直接過濾方法
def direct_remove_stopwords(text,replacement,trie): JString=JClass('java.lang.String') searcher=trie.getLongestSearcher(JString(text),0) offset=0 result='' while searcher.next(): begin=searcher.begin end=begin+searcher.length if begin>offset: result+=text[offset:begin] result+=replacement offset=end if offset<len(text): result+=text[offset:] return result
if __name__ == "__main__": HanLP.Config.ShowTermNature = False trie = load_dictionary(HanLP.Config.CoreStopWordDictionaryPath) text = "今天就這樣吧!明天我們在說可以嗎?" segment = DoubleArrayTrieSegment() termlist = segment.seg(text) print("分詞結(jié)果", termlist) print("去掉停用詞", remove_stopwords(termlist, trie)) print("不分詞去掉停用詞", direct_remove_stopwords(text, "**", trie))

運(yùn)行之后,效果如下:

以上就是Python自然語言處理停用詞過濾實(shí)例詳解的詳細(xì)內(nèi)容,更多關(guān)于Python自然語言處理停用詞過濾的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解flask中如何獲取不請求方式的參數(shù)

    詳解flask中如何獲取不請求方式的參數(shù)

    這篇文章主要詳細(xì)介紹了在flask中如何獲取不請求方式的參數(shù),文中給出了詳細(xì)的代碼示例和圖文介紹,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-04-04
  • 詳解python中的三種命令行模塊(sys.argv,argparse,click)

    詳解python中的三種命令行模塊(sys.argv,argparse,click)

    這篇文章主要介紹了python中的三種命令行模塊(sys.argv,argparse,click)的相關(guān)資料,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-12-12
  • Python通過正則庫爬取淘寶商品信息代碼實(shí)例

    Python通過正則庫爬取淘寶商品信息代碼實(shí)例

    這篇文章主要介紹了Python通過正則庫爬取淘寶商品信息代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 利用python調(diào)整Excel行高和列寬的操作示例

    利用python調(diào)整Excel行高和列寬的操作示例

    在Excel中,默認(rèn)的行高和列寬可能不足以完全顯示某些單元格中的內(nèi)容,特別是當(dāng)內(nèi)容較長時(shí),通過調(diào)整行高和列寬,可以確保所有數(shù)據(jù)都能完整顯示,避免內(nèi)容被截?cái)?本文將介紹如何通過Python調(diào)整Excel的行高列寬、或設(shè)置自適應(yīng)行高列寬,需要的朋友可以參考下
    2024-11-11
  • django中模板繼承與ModelForm實(shí)例詳解

    django中模板繼承與ModelForm實(shí)例詳解

    ModelForm類是form是組件中Form的一個(gè)子類,所以也是處理表單的,下面這篇文章主要給大家介紹了關(guān)于django中模板繼承與ModelForm的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • Python3讀寫Excel文件(使用xlrd,xlsxwriter,openpyxl3種方式讀寫實(shí)例與優(yōu)劣)

    Python3讀寫Excel文件(使用xlrd,xlsxwriter,openpyxl3種方式讀寫實(shí)例與優(yōu)劣)

    這篇文章主要介紹了Python3讀寫Excel文件,使用xlrd,xlsxwriter,openpyxl3種方式讀寫實(shí)例與優(yōu)劣,需要的朋友可以參考下
    2020-02-02
  • 一篇文章帶你入門Python正則表達(dá)式

    一篇文章帶你入門Python正則表達(dá)式

    這篇文章主要介紹了Python中正則表達(dá)式的詳細(xì)教程,正則表達(dá)式是Python學(xué)習(xí)進(jìn)階當(dāng)中的重要內(nèi)容,需要的朋友可以參考下
    2021-10-10
  • python-字典dict和集合set

    python-字典dict和集合set

    這篇文章主要介紹了python-字典dict和集合set,字典是python中的一種數(shù)據(jù)結(jié)構(gòu)。集合(set)與字典相同均存儲(chǔ)key,但只存儲(chǔ)key,key不可重復(fù),所以set中的值不可重復(fù),而且是無序,下面來看看更多相關(guān)內(nèi)容吧
    2021-12-12
  • Python的speech_recognition庫如何將聲音轉(zhuǎn)為文字

    Python的speech_recognition庫如何將聲音轉(zhuǎn)為文字

    這篇文章主要介紹了通過Python的speech_recognition庫將聲音轉(zhuǎn)為文字,將聲音轉(zhuǎn)為文字,除了speech_recognition庫,還要依賴pyaudio庫,而且mac用戶需要安裝PortAudio,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • 在Python程序員面試中被問的最多的10道題

    在Python程序員面試中被問的最多的10道題

    本篇文章我們?yōu)榇蠹艺砹嗽赑ython程序員面試中被問的最多的10道題,我們還給出了最簡便的解決辦法,一起學(xué)習(xí)下。
    2017-12-12

最新評論