假设我有一个数据框,其中一列是值,另一列是观察到该值的次数:

x <- data.frame(value=c(1,2,3), count=c(4,2,1))
x
#   value count
# 1     1     4
# 2     2     2
# 3     3     1

我知道我可以使用 weighted.mean 获得数据的加权平均值,并使用多个包(例如 weighted.median )提供的 limma 函数获得加权中位数,但是我如何获得数据的其他加权统计数据,例如第 1 和第 3 个四分位数,也许标准偏差?使用 rep “扩展”数据不是一种选择,因为 sum(x$count) 大约有 30 亿(人类基因组的大小)。

最佳答案

你有没有试过这些包:

  • Hmisc -- 它有几个加权统计,包括加权分位数
  • laeken -- 它具有加权分位数。
  • 关于r - 给定 R 中每个值的计数,如何轻松获得平均值、中位数、四分位数等?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5306725/

    10-12 22:12