我不知道是否有任何線索如何開始寫我自己的停用詞刪除,而我不想使用任何外部libraries.after創建HashSet後,我們如何將它放到工作中去除文本的停止詞?再一次,我不想使用任何外部庫。java中的停用詞去除
回答
我會從文件中讀取它們。每字一行。
Set<String> stopWords = new LinkedHashSet<String>();
BufferedReader br = new BufferedReader(new FileReader("stop-words.txt"));
for(String line;(line = br.readLine()) != null;)
stopWords.add(line.trim());
br.close();
if(stopWords.contains(word))
// it's a stop word
else
// it's not a stop word.
如果你有一組停止的話,你要刪除從停止單詞的列表,只需遍歷列表,刪除包含在設置止損的話任何話:
Set<String> stopWords = new HashSet<String>();
//fill stopWords
//use a linked list to make removal faster, you don't need random access here
List<String> text = new LinkedList<String>();
//fill text
Iterator<String> textIterator = text.iterator();
while(textIterator.hasNext()) {
//this assumes there are no null entries in the list
//and all stopwords are stored in lower case
if(stopWords.contains(textIterator.next().toLowerCase())) {
textIterator.remove();
}
}
耶!那看起來像我的意思:) – seventeen
那麼,你如何做停用詞移除的一般想法是,你將輸入文本分成單詞,然後在停用詞映射中查找每個單詞。停用詞查找可能需要不區分大小寫。
具體內容取決於文本內容以及打算如何處理。
我知道,但是當我們發現停止詞,如何從文本中取出它? – seventeen
@MostafaAlli - 當你從單詞中重新排列文字時,你不會將它從文本中刪除。看到我的答案。 –
- 1. 停用詞去除F#
- 2. 停用詞去除在Lucene的
- 3. 在java中停止詞的去除方法不工作
- 4. 如何刪除java中的停用詞?
- 5. 在java中刪除停用詞
- 6. Python NLTK - 防止停用詞去除每個詞
- 7. Tokenizer,停止詞的刪除,在Java中的詞幹
- 8. 刪除停用詞
- 9. 刪除NLTK中的停用詞
- 10. 刪除句子中的停用詞
- 11. 刪除字符串中的停用詞
- 12. 從Java字符串中刪除停用詞
- 13. 在Java中刪除停用詞---需要幫助
- 14. R tm removeWords停用詞不會刪除停用詞
- 15. 的Java Applet去除
- 16. 從數據框中刪除停用詞
- 17. 從文件中刪除停用詞
- 18. 從推文中刪除停用詞Python
- 19. NLTK從CSV中刪除停用詞
- 20. 使用java模式匹配去除單個字母單詞
- 21. 阿帕奇豬:從袋子令牌元組中去除停用詞?
- 22. Tokenize,使用Lucene和Java刪除停用詞
- 23. Solr的去除ace001搜索詞的「E」
- 24. 停止CKEditor去除div
- 25. CSS去除:懸停屬性
- 26. 從文本中消除停用詞,同時不刪除重複的常規詞
- 27. 的preg_replace去除單/雙字詞
- 28. 句子分詞器中的停用詞
- 29. tm_map刪除包含我的停用詞的詞嗎?
- 30. 的java jsoup除去新線
您是否需要[this]?(http://www.textfixer.com/resources/common-english-words.txt) – chance
您可以從文件或資源中讀取停用詞。 – Ingo
我不太明白你的問題是什麼:你想以某種方式計算停用詞是什麼,或者你需要一種更快的方式將你定義的那些添加到集合中? – Thomas