Python情感分析(比较单词时,文本中重复的单词不计算在内)

标签 python python-2.7 nlp sentiment-analysis

我有这段代码,它应该将单词的肯定语料库与主题文本进行比较。它表现得很好,直到我发现重复的文本没有被分解。

文字:这是一部非常好的电影,太好了

肯定列表:好、更好等..

该脚本在以下实现中仅计为“好”一次:

 readFile = open('test.txt','r').read()
    readFileList = readFile.split('\n')

    counter = 0


    for eachNeg in negWords:
            if eachNeg in readFile:
                    counter -= 1
                    print eachNeg
    print counter


    for eachPos in posWords:
            if eachPos in readFile:
                    counter +=1
                    print eachPos
    print counter

最佳答案

该代码完全符合您的描述。您告诉 python 如果文本中出现该单词,则将计数器加 1,如下所示:

a in [aaaabbbbccc] 
>> True

您需要另一个 for 循环来计算每个单词:

for eachPos in posWords:
    for word in readFile:
        if eachPos == word:
            counter +=1
            print eachPos
print counter

我不是 100% 确定您是否可以迭代 readFile,但我肯定您可以或至少可以找到一种方法将其添加到列表As Bartloviej Lewandow 提到使用 readfile.split()。这是一种非常幼稚的做法。

我认为还有另一种方法,您首先计算单词,然后查看它们是否在您的列表中。对于集合和计数器的研究,这对您的项目来说是惊人的!

https://stackoverflow.com/a/5829377/3863636

关于Python情感分析(比较单词时,文本中重复的单词不计算在内),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26085711/

相关文章:

python - “Unicode”与 SQLAlchemy 和 PostgreSQL 的 'String'

python - 当我 pip 安装要求时,无限循环不兼容(Django1.99)

python - 无法通过 ID 从 Google 云端硬盘下载文件

python - 无法捕获 "error"类型异常

尝试评估表达式时 Python eval() 语法错误

python - 有没有办法使用 SpaCy 获取整个成分?

nlp - Word2Vec - 向向量表示添加约束

python - 从元组列表创建嵌套字典

opencv - 使用 Python OpenCV 在同一窗口中显示多个图像?

machine-learning - 使用 "Bag of Words"方法进行主题检测的朴素贝叶斯