日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NLTK入门

發(fā)布時間:2024/4/14 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NLTK入门 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

首先要了解python的基本語法,

  其中列表的處理,字符串的格式化,以及詞匯的比較運算(包括判斷某一個詞語開頭是否大小寫等)

專有名詞:

  1. 分詞:用于產(chǎn)生詞匯和標點符號的鏈表

安裝完NlLTK后,

  import nltk

  nltk.download()  

計算text1中每個詞的平均出現(xiàn)次數(shù)公式:

  avg = len(text1)/len(set(text1))

計算text1中某個詞的出現(xiàn)頻率

  p = text1.count('a')/len(text1)

import nltk from nltk.book import * #所有的文本數(shù)據(jù)導入,(text1 ~text9)nltk.download() #下載所需的訓練文本數(shù)據(jù) text1.concordance('monstrous') #查找text1文本中存在monstrous的 text1.count('word') #計算word在text1中出現(xiàn)的次數(shù)
text1.silimar('monstrous') text1.common_contexts(['monstrous', 'very']) #查看使用兩個或者兩個以上詞語的上下文 text1.dispersion_plot(['word1', 'word2', 'word3', ...]) #畫出這些詞語分布的離散圖 text1.generate() #生成text1中的隨機文本 fdist1 = FreqDist(text1) #可以用來尋找text1中最常見的詞 fdist1.key()[:50] fdist = FreqDist([len(w) for x in text1]) #FreqDist不僅可以顯示詞,還可以顯示沒個詞對應的長度,【1, 3,5,6,11,5,9,......】 fdist.keys() # 查詢計數(shù)鏈表中的每個數(shù)字出現(xiàn)的次數(shù),以頻率遞減順序的樣本鏈表 fdist.items() #[(3,50223), (9,988), ...] 詞長度為3的有50223個 fdist[3] #查看詞長為3的有多少個, fdist.fred(3) #計算詞長為3的詞頻。
fdist.fred['a']  #計算a的出現(xiàn)頻率
fdist.hapaxes()   #查看只出現(xiàn)一次的詞
fdist.inc(sample)  #增加樣本
fdist['a']  #計算給定樣本出現(xiàn)的次數(shù)
fdist.N{}  #樣本總數(shù)
fdist.tabulate()  #繪制頻率分布表
fdist.plot()  #繪制頻率分布圖
fdist.plot(cumulative=True)  #繪制累積頻率分布圖
fdist1 < fdist2  #測試數(shù)據(jù)fdist1是否小于fdist2

2.處理網(wǎng)頁中獲取的文本內(nèi)容

from urllib.request import urlopen url = "www.xxxx.com/a.txt" raw = urlopen(url).read() # raw是從某url獲取的文本 tokens = nltk.word_tokenize(raw) #此時tokens為含有詞匯和標點的鏈表 text = nltk.Text(tokens) #text為<type. 'nltk.text.Text'> 對象 text.collocations() #找文本中頻繁相鄰的二元組
a = raw.find('PART I')  # 找到文中以 PART I 開頭的詞語在哪一個位置
b = raw.rfind('where are you')  #找到以wehere are you 結(jié)尾的位置在哪個位置,
raw = raw[a:b]  #可以根據(jù)此方式去除不需要的開頭和結(jié)尾的文本內(nèi)容

3. 處理html 網(wǎng)絡的文本大部分是以html的形式,可以用一下方式進行簡單的處理

url = 'www.youtube.com' html = urlopen(url).read() #html包含了網(wǎng)址中的所有內(nèi)容,css,jss,html代碼等 raw = nltk.clean_html(html) #nltk 中提供的處理html的輔助函數(shù)。返回處理后的原始文本 ,然后可以對raw進行word_tokenize()分詞處理

?

轉(zhuǎn)載于:https://www.cnblogs.com/bianjing/p/9979552.html

總結(jié)

以上是生活随笔為你收集整理的NLTK入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。