《自然語言處理技術》進階案例讀取與分析語料庫V1.0_第1頁
《自然語言處理技術》進階案例讀取與分析語料庫V1.0_第2頁
《自然語言處理技術》進階案例讀取與分析語料庫V1.0_第3頁
《自然語言處理技術》進階案例讀取與分析語料庫V1.0_第4頁
《自然語言處理技術》進階案例讀取與分析語料庫V1.0_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《自然語言處理技術》代碼42所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s12讀取語料庫corpus_file='水滸傳.txt'#語料庫文件路徑withopen(corpus_file,'r',encoding='utf-8')asfile:#使用open函數打開語料庫文件,并以只讀模式進行操作corpus=file.read()#讀取文件的內容,并將其存儲在變量corpus中print('水滸傳的文本:\n',corpus)運行REF_Ref97535682\h代碼42,得到的水滸傳文本內容,部分結果如下。水滸傳的文本:《水滸傳》施耐庵楔子張天師祈禳瘟疫洪太尉誤走妖魔 話說大宋仁宗天子在位,嘉佑三年三月三日五更三點,天子駕坐紫哀殿,受百官朝賀。但見:…文本預處理對水滸傳文件內容進行文本預處理,主要包括去除特殊符號、數字和英文字符等,同時進行分詞、去停用詞操作,如REF_Ref134043179\h代碼43所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s13文本預處理#使用正則表達式去除特殊符號、數字和英文字符clean_text=re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、~@#¥%……&*():;《)《》“”’‘[\]]","",corpus)tokens=jieba.cut(clean_text)#對語料庫進行分詞tokens=list(tokens)#使用with語句和open函數以只讀模式('r')打開停用詞表文件,指定文件編碼為'utf-8'withopen("stopwordsHIT.txt","r",encoding="utf-8")asf:#使用文件對象的readlines()方法將文件內容逐行讀取到一個名為stopwords的列表中stopwords=f.readlines()#遍歷停用詞列表,使用strip()方法去除每個停用詞的換行符,得到一個新的停用詞列表stopwords=[word.strip()forwordinstopwords]#使用列表推導式過濾分詞結果seg_words中的停用詞#只保留不在停用詞列表stopwords中的詞filtered_words=[wordforwordintokensifwordnotinstopwords]print('文本預處理后的分詞結果(部分):\n',filtered_words[100:200])運行REF_Ref134043179\h代碼43,得到文本預處理結果如下。水滸傳的文本:文本預處理后的分詞結果(部分):['隱隱','凈鞭','三下','響','層層','文武','兩班','齊當','殿','頭官','喝道','有事','出班','早奏','無','事','卷簾','退朝','只見','班部','叢中','宰相','趙哲','參政','文彥博','出班奏','曰','目今','京師','瘟疫','盛行','傷損','軍民','甚多伏望','陛下','釋罪','寬恩省','刑薄稅','祈','禳','天災','救濟','萬民','天子','聽奏','急','敕','翰林院','隨即','草詔','一面','降赦','天下','罪囚','應有','民間','稅賦','悉皆','赦免','一面','命在京','宮觀','寺院','修設','好事','禳','災','不料','其年','瘟疫','轉盛仁','宗天子','聞知','龍體','下安','復會','百官','計議','那班部','中','大臣','越','班啟奏','天子','看時','乃是','參知政事','范仲淹','拜','罷','起居','奏','曰','目','今天','災','盛行','軍民','涂炭','日夕']查詢詞頻查詢指定詞在語料庫中的詞頻,即通過詞頻統計對象FreqDist獲取指定詞(宋江)的詞頻信息,并將其打印輸出,如REF_Ref98942649\h代碼44所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s14查詢詞頻search_word='宋江'#要查詢的詞word_freq=FreqDist(filtered_words)#計算詞頻freq=word_freq[search_word]#查詢指定詞的詞頻print(f'詞"{search_word}"在語料庫中出現的次數為:\n{freq}')運行REF_Ref98942649\h代碼44,得到詞頻查詢結果如下。詞"宋江"在語料庫中出現的次數為:2384統計高頻詞頻統計語料庫中出現次數最多的前10個詞,并將它們的詞和對應的出現次數依次打印輸出,如REF_Ref98521257\h代碼45所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s15統計高頻詞頻most_common_words=word_freq.most_common(10)#統計出現次數最多的前10個詞print('出現次數最多的詞:')forword,countinmost_common_words:print(f'詞"{word}":出現次數{count}')運行REF_Ref98521257\h代碼45,得到出現次數最多的詞如下。出現次數最多的詞:詞"道":出現次數5096詞"去":出現次數3576詞"便":出現次數3016詞"都":出現次數2711詞"宋江":出現次數2384詞"人":出現次數1793詞"上":出現次數1743詞"兩個":出現次數1660詞"卻":出現次數1637詞"只":出現次數1569查詢詞頻在指定區間內的詞數量統計詞頻在指定區間[min_freq,max_freq]內的詞的數量,并將結果打印輸出,如REF_Ref133789439\h代碼46所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s16查詢詞頻在指定區間內的詞數量min_freq=5#最小詞頻max_freq=10#最大詞頻words_in_range=[wordforword,countinword_freq.items()ifmin_freq<=count<=max_freq]num_words_in_range=len(words_in_range)print(f'詞頻在區間[{min_freq},{max_freq}]內的詞數量為:\n{num_words_in_range}')運行REF_Ref133789439\h代碼46,得到在指定區間內的詞數量如下。出現次數最多的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論