gpt4 book ai didi

r - qdap ngram 极性字典

转载 作者:行者123 更新时间:2023-12-02 06:19:40 24 4
gpt4 key购买 nike

亲爱的Stackoverlow人群

我设法使用qdap极性函数来计算一些博客条目的极性,加载我自己的字典,基于sentiWS。现在我有了一个新的情感词典( SePL ),它不仅包含单个单词,还包含短语。例如“simply good”,其中“simply”既不是否定词,也不是放大器,而是让它变得更加精确。所以我想知道是否可以使用 qdap 的极性函数来搜索 ngram。

举个例子:

library(qdap)
phrase <- "This is simply the best"
key <- sentiment_frame(c("simply", "best", "simply the best"), "", c(0.1,0.3,0.8))
counts(polarity(phrase, polarity.frame=key))

给出:

  all wc polarity    pos.words neg.words                text.var
1 all 5 0.179 simply, best - This is simply the best

但是,我想得到如下输出:

  all wc polarity    pos.words neg.words                text.var
1 all 5 0.76 simply the best - This is simply the best

有人知道如何让它像这样工作吗?

祝一切顺利,本

最佳答案

这是今年早些时候对 bag_o_word 函数进行更改时重新引入的错误。这是自从我在极性.frame 中启用 ngram 以来,此类错误第二次影响 ngram 极性:https://github.com/trinker/qdap/issues/185

我已经修复了该错误并添加了单元测试,以确保该错误不会重新进入代码中。您在 qdap 2.2.1 中的代码现在给出了所需的输出,尽管针对算法初衷的警告仍然存在:

> library(qdap)
> phrase <- "This is simply the best"
> key <- sentiment_frame(c("simply", "best", "simply the best"), "", c(0.1,0.3,0.8))
> counts(polarity(phrase, polarity.frame=key))

all wc polarity pos.words neg.words text.var
1 all 5 0.358 simply the best - This is simply the best

qdappolity 函数使用的算法并非设计用于这样操作。您可以使用以下 hack 来完成此操作,但要知道它不符合函数算法中使用的基础理论的意图:

library(qdap)
phrase <- "This is simply the best"

terms <- c("simply", "best", "simply the best")
key <- sentiment_frame(space_fill(terms, terms, sep="xxx"), NULL, c(0.1,0.3,0.8))

counts(polarity(space_fill(phrase, terms, "xxx"), polarity.frame=key))

## all wc polarity pos.words neg.words text.var
## 1 all 3 0.462 simplyxxxthexxxbest - This is simplyxxxthexxxbest

关于r - qdap ngram 极性字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27156834/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com