我正在尋找一個函數來獲取某個術語的DF(意思是在一個語料庫中有多少文檔包含某個單詞),但我似乎無法找到函數here。該頁面僅具有獲取tf, idf, and tf_idf值的功能。我只專注於DF。我複製下面的代碼從文檔,爲什麼在NLTK中沒有函數來計算文檔頻率(DF)?
matches = len([True for text in self._texts if term in text])
,但我不喜歡它給出結果。例如,如果我有一個字符串列表,並且正在查找Pete
這個詞,它還包括名稱Peter
,這不是我想要的。例如。
texts = [['the', 'boy', 'peter'],['pete','the', 'boy'],['peter','rabbit']]
所以我要尋找其出現兩次pete
,但我上面顯示的代碼會告訴你,有三個皮特的,因爲它也算peter
。我該如何解決這個問題?謝謝。
在您的例子'peter'發生兩次及'pete'只有一次 – erasmortg
作爲一個側面說明,你的第一子列表沒有男孩之間'逗號'和'peter',我沒有編輯,所以你可能會注意到 – erasmortg
@erasmortg oops我沒有意識到這一點。我當場做了這個例子。事實上,我有我自己的名單,這是太長,不能張貼在這裏。感謝您指出了這一點。 –