如何用geom_histogram按两个变量的比例加权?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用geom_histogram按两个变量的比例加权?相关的知识,希望对你有一定的参考价值。

我正在使用的套餐:

  • GGPLOT2

我正在使用的起始数据集:

Group_Size       Group_Premium   Group_Claims
26               24544.01        18181.25
6                10017.12        7604.51         
13               12694.34        8787.00
98               90916.20        67166.73
27               31113.72        27180.83

我想做什么?

我正在尝试创建类似于直方图的东西。

我想通过Group_Size进行bin操作,这样我就可以使用0-20,21-40,41-60等的容器[宽度为20的容器]。所以Group_Size箱子就是这个“直方图”的x轴。

我希望y轴绘制总和(Group_Claims)/ sum(Group_Premium)。因此,例如,在上面的虚拟数据集中,我希望0-20 bin具有以下y值:

(7604.51 + 8787.00) / (10017.12 + 12694.34) = 0.7217

到目前为止我尝试过的代码......

library(ggplot2)

df <- data.frame(Group_Size = c(26, 6, 13, 98, 27),
                 Group_Premium = c(24544.01, 10017.12, 12694.34, 90916.20, 31113.72),
                 Group_Claims = c(18181.25, 7604.51, 8787.00, 67166.73, 27180.83))

my_plot <- ggplot(
  data=df
  , aes(x=Group_Size, weights=Group_Claims/Group_Premium)) +
  geom_histogram(binwidth=20, boundary = 0)

my_plot

但是,这并不像我想要的那样有效。它将sum(Group_Claims / Group_Premium)作为y值而不是sum(Group_Claims)/ sum(Group_Premium)。我怎样才能实现我的目标?谢谢,所有。

以上是关于如何用geom_histogram按两个变量的比例加权?的主要内容,如果未能解决你的问题,请参考以下文章

自变量多个维度如何用process

求如何用mysql实现计算上下两条记录的差

如何用VB让按公式计算?

spss交互项检验如何做?

如何用其他 get 变量对 Django 进行分页?

在 geom_histogram 中使用第三个变量作为填充美学