如何用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按两个变量的比例加权?的主要内容,如果未能解决你的问题,请参考以下文章