R 平均值-如何聚合不同样本大小的平均值

R 平均值-如何聚合不同样本大小的平均值,r,math,mean,R,Math,Mean,我如何考虑取几个不同平均值的平均值 以下是一些数据: library(dplyr) month <- c("January", "January","January", "February", "March", "April", "April", "May", "June", "July") year <- c(2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014) v1 <- c(0, 1, 0, 1, 0, 0

我如何考虑取几个不同平均值的平均值

以下是一些数据:

library(dplyr)
month <- c("January", "January","January", "February", "March", "April", "April", "May", "June", "July")
year <- c(2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014)
v1 <- c(0, 1, 0, 1, 0, 0, 1, 0, 1, 1)
df <- data.frame(month, year, v1)

然而,鉴于我有几个月的平均数,每个月的平均数都有不同的样本量,我如何获得2014年的正确平均数?

没有代表评论。你的问题不清楚,你想计算什么?你想要月平均值吗


考虑到几个月来缺乏数据,我想知道每月计算平均值是否合适。如果你只想得到2014年的简单平均数,那么就不需要将月份分组,你只需要计算样本平均数

两种平均值方法给出的值相同:

下面简单地计算一下年平均值:

df %>% group_by(year) %>% 
  summarise(year_avg = mean(v1))
与每个月都有不同样本的月平均值相比:

df %>% group_by(year, month) %>% 
  summarise(month_avg = mean(v1), samples = n()) %>%
  summarise(year_avg = weighted.mean(month_avg, samples))

这是一个统计问题吗?您只需
group\u by(year)
假设数据中的每一行都是一个样本。或者,您可以使用
weighted.mean()
是的,我想这是一个统计问题。我不确定它是否需要任何形式的加权,因为月度平均值是用不同的样本量创建的。通过在交叉验证上发布,你更可能在统计问题上获得帮助:我每天有不同数量的二元观察值,我通过取平均值将其聚合到月度数据中。然而,我不仅对每个月的平均值感兴趣,而且对一年的平均值也很好奇。我现在明白你的意思了,我可以从联合国汇总的数据中取平均值,而不是试图取几个为每月水平计算的平均值。
df %>% group_by(year, month) %>% 
  summarise(month_avg = mean(v1), samples = n()) %>%
  summarise(year_avg = weighted.mean(month_avg, samples))