如何使用fun.data(stat_summary)?

时间:2014-03-04 16:07:05

标签: r ggplot2 weighted-average

我想在ggplot2中使用fun.data选项。我想要做的是一个图表,显示在调查问题中选择超过4分的人的百分比(加权)。

如果我想做相同的图形,但没有给人们加权,我会这样做:

ggplot(database, aes(x,y)) + 
  geom_point(stat='summary', fun.y=function1)

其中:

function1 <- function(x){
  value=sum(x>=4)/sum(x)
  names(value)='y'
  value
}

但是如何才能为称重的案例做到这一点?我尝试了这个选项,但它不起作用:

ggplot(database, aes(x,y)) + 
  geom_point(stat='summary', fun.data=function2)

其中:

function2 <- function(base){
  value=sum((x>=4)*base$weight)/sum(base$weight)
  result=c(value, value, value)
  names(result)=c('y','ymax', 'ymin')
  result
}

但是,它无法识别base$weight。为什么呢?

0 个答案:

没有答案