首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >wordcloud中的comparison.cloud函数给出了错误的数据

wordcloud中的comparison.cloud函数给出了错误的数据
EN

Stack Overflow用户
提问于 2019-08-24 01:02:21
回答 1查看 157关注 0票数 0

我正在尝试使用R,syuzhet和wordcloud中的comparison.cloud函数来做一些推特情绪分析。输出中的单词与它们应该在的位置不一致。

我的矩阵(x)如下所示:

代码语言:javascript
运行
复制
           positive negative
marketing        11       10
learn            40        4
change            3        4
better            7        5
make             10        6
helping           6        5

代码如下:

代码语言:javascript
运行
复制
x <- cbind(c(11,40,3,7,10,6),c(10,4,4,5,6,5))
rownames(x) <- c("marketing","learn","change","better","make","helping")
colnames(x) <- c("positive","negative")

comparison.cloud(x, colors = c("blue", "red"))

预期的结果是,“营销”、“学习”、“更好”、“制造”和“帮助”将是蓝色的“积极”方面,而“变化”将是红色“消极”的唯一方面。

实际发生的是"learn“是蓝色的,其余的都是红色的。

据我所知,comparison.cloud检查一个单词在“负”栏中的值是否大于0,如果有,它会自动将其绘制在“负”栏中,即使“正”是一个更高的数字。

有人知道怎么解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2019-08-24 01:43:58

你可以这样做:

代码语言:javascript
运行
复制
x <- as.data.frame(cbind(c(11,40,3,7,10,6),c(10,4,4,5,6,5)))
x$types <- c("marketing","learn","change","better","make","helping")
colnames(x) <- c("positive","negative", "types")
x$all <- x$positive + x$negative
colorVec = ifelse(x$positive > 11, "blue", "red")
x <- x[,c("types", "all")]

library(wordcloud2)
wordcloud2(x, color = colorVec, fontWeight = "bold")

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57630440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档