我正在用c#进行情感分析,我已经完成了预处理,下一部分是基于词典的分析,为此我找到了大约6800个单词的英语词典lexicon by Professor Bing Liu 其中包含两个文本文件,一个用于正值,另一个用于负值。
我想我必须从这些文件中找到每个单词(情感词),该特定词是积极的还是消极的。但问题是,这些文件包含没有任何空格、没有任何格式的单词(意味着无法从文件中识别单个单词)。
那么我怎样才能找到文件中的单词呢?或者有什么其他方法可以让我轻松地处理这个问题?
最佳答案
该文件使用 \n
作为行分隔符(与标准 Windows \r\n
不同)。
因此,不要使用 NotePad 或类似工具打开它,而是使用 WordPad 打开它。
要将文件加载到集合中(让它成为 HashSet<String>
- 您可能想测试一个单词是否在积极单词内,您可以使用 Linq:
HashSet<String> positives = new HashSet<String>(File
.ReadLines(@"C:\positive-words.txt")
.Where(item => !String.isNullOrEmpty(item) && !item.StartsWith(";")));
....
String testWord = ...
if (positives.Contains(testWord)) {
...
}
实际文件内容是
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Opinion Lexicon: Positive
...
; frequently in social media content.
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
a+
abound
abounds
abundance
...
zenith
zest
zippy
关于c# - 如何在c#中使用lexicon字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33173056/