计算意外单元格新变量的平均值 table

Calculate mean of new variable for cells of contingency table

我试图在图中用彩色气泡总结李克特量表评分数据。我目前有一个小提琴图覆盖在一个抖动的、多面的散点图上,这让我几乎无法传达我想要传达的信息。

理想情况下,我只为李克特量表上的每个点设置气泡,大小由具有该分数的项目的数量(或比例)决定,并由 spKnownShown 变量的平均值加阴影。为 Likert-facet-x 轴组合做一个偶然性 table 是微不足道的,但是我如何 link 每个单元格到 spKnownShown 的平均值?任何关于从偶然事件 table 进入实际情节的下一步的建议都将不胜感激。

抱歉,我无法共享这些数据,因为它处于保密协议之下。

考虑使用 dplyr 包中的函数。我首先制作一个假数据集,其中 x、y、v 和 f 分别对应于 x 轴、李克特、你想要的均值和小平面的值。

library(ggplot2)
library(dplyr)
n <- 1000
set.seed(1)
d <- data.frame(x = sample(0:1, n, r = T),
                y = pmin(rpois(n, 2), 6),
                v = rnorm(n),
                f = sample(0:2, n, r = T))

创建您想要的值是使用 group_bysummarise 来自 dplyr 的组合:

plt <- d %>% group_by(f, x, y) %>%
  summarise(n = n(), v = mean(v))

最后,剧情:

ggplot(plt, aes(x = factor(x), y = factor(y), size = n, colour = v)) +
  geom_point() +
  facet_wrap("f")