2

我在 Excel 中有一堆数据,我需要从中获取某些百分比信息。问题是,我没有让数据集由每个值组成,而是有关于数据数量或“桶”数据的信息。

例如,假设我的实际数据集是这样的:1,1,2,2,2,2,3,3,4,4,4

我拥有的数据集是这样的:

Value    No. of occurrences
  1              2
  2              4
  3              2
  4              3

有没有一种简单的方法可以计算百分位信息(以及中位数),而不必将汇总数据分解为完整的数据集?(一旦我这样做了,我就知道我可以使用 Percentile(A1:A5, p) 函数)

这很重要,因为我的数据集非常大。如果我将数据分解出来,我将有数十万行,并且我必须为几百个数据集做这件事。

帮助!

4

1 回答 1

0

您的示例中的中位数非常简单,因为您显示的总数为奇数No. of occurrences。通过观察,2中的中位数。相对于最后2(序列中的第六个值)有五个值小于或等于[1,1,2,2,2]和五个值大于或等于[3, 3,4,4,4]。

这可以使用一个公式从您的汇总数据中计算出来,例如包含您的出现次数 [2,4,2,3] 的数组的命名范围在 =(1+SUM(No._of_occurrences))/2哪里。No._of_occurences

具有偶数个数据点的数据集没有中位数,因此添加一个数据点(例如 4)的任何结果都是可疑的。在这种情况下,公式将返回 6.5,其中一半表示无效结果(有两个中间值)。虽然如果采用一种相当传统的方法来平均这两个值,那么公式结果可以解释为第六个 [2] 和第七个 [3] 值的平均值,即 2.5。

您的分箱次数的单个值乘以 100 并除以总出现次数 [11] 将得出每个分箱占总数的百分比。这些的累积总计给出了每个箱的上限的百分位数。假设较低的第 30 个百分位数出现在第二个 bin 中,因此在这种情况下为 2。较低的第 20 个百分位数和第 50 个百分位数(中位数)在同一个 bin 中,因此对他们来说答案也是 2。

这是有效的,因为您为每个数据点值选择了一个 bin。如果这些(更常见的是)是范围(例如 1-5、6-10 等),那么较低的第 20 个和第 50 个百分位数可能仍然在同一个 bin 中,但不一定具有相同的值。但是,要确定该值,仅需要进一步检查该 bin 的内容以确定确切值,而不是整个数据集。

SO2691928 示例

于 2013-08-20T03:21:52.710 回答