如果均值是如此敏感,为什么要首先使用它?


84

众所周知,中位数可以抵抗异常值。如果是这样,我们何时以及为什么要首先使用均值?

我能想到的一件事可能是了解离群值的存在,即,如果中位数距离均值较远,则分布偏斜,也许需要检查数据以确定对离群值要做什么。还有其他用途吗?


14
关于第一个问题,请注意:统计中的均值只是人口的第一刻,而中位数不是。寻求使用CLT,大数定律等,您再次与有限矩的存在联系在一起。尽管以柯西分布为例:中位数存在,而均值则不;)
Dmitrij Celov 2011年

2
@Dmitrij这是一个深刻而有见地的答案。您为什么不在回复中详细说明呢?
whuber

如果您不使用卑鄙的话,会伤害它的感觉吗?(对不起,无法抗拒。)
Daniel R Hicks

3
@Daniel R Hicks:的意思是,是吗?(对不起,也无法抗拒)。
穆罕默德·阿尔卡鲁里

3
这个问题比通常的问题更有趣,“为什么我们不总是使用健壮的算法?” 问题,但可能具有与“健壮==神奇”相同的基本思想,并且如果我们仅使用健壮的方法,则无需检查数据,理解数据或担心各种精度问题,因为它们是“强大的”。不过,+ 1。
韦恩

Answers:


113

从某种意义上说,使用平均值是因为它对数据敏感。如果分布恰好是对称分布,并且尾部近似于正态分布,则均值是集中趋势的非常有效的总结。中位数虽然对于任何连续分布都具有鲁棒性和良好的定义,但如果数据碰巧来自正态分布,则其效率仅为平均值的。正是中位数的这种相对低效率,使我们无法使用它甚至超过我们。当样本量变大时,相对效率低下会转化为较小的绝对效率低下,因此对于较大的我们可以更轻松地使用中位数。 ñ2πn

有趣的是,对于变化(扩展,离散)的度量,有一个非常强大的估计器,其效率是标准偏差(即基尼平均差)的0.98。这是任何两个观察值之间的平均绝对差。[您必须将样本标准差乘以一个常数才能估计由基尼平均差估计的相同量。]集中趋势的有效度量是Hodges-Lehmann估计量,即所有成对均值的中位数。如果它的解释更简单,我们将更多地使用它。


13
+1代表中心趋势的Hodges-Lehmann估计量。在许多方面,它介于平均值和中位数之间。我认为,如果仅是大样本中的计算很容易,它将比平均值或中位数更受欢迎。
ttnphns

顺便说一句,@弗兰克,你知道霍奇斯-莱曼中心遵循哪个理论抽样分布吗?我不会-我很感兴趣。
ttnphns

16
感谢您的评论。一个一行中的R可以计算它有效地达到N = 5000: w <- outer(x, x, '+'); median(w[row(w) >= col(w)])/2。R可以调用普通的C,Fortran或Ratfor程序,以使其快速运行。R中的ICSNP软件包具有hl.loc功能相当有效的实现。对于N = 5000,它比上面的代码(总时间1.5秒)快2.66倍。也可以有效地获得一个置信区间会很好。
弗兰克·哈雷尔

@FrankHarrel 对于标准偏差的和估计量,您能说什么?使用非正态分布的基尼均值差,应使用哪个常数来估算?我找不到在开放式访问源中描述此常数的计算过程的论文...而且我也没有找到有关基尼均值差的鲁棒性的任何信息,您能提供在哪里进行搜索的想法吗?Q Ñ σSnQnσ
德国人Demidov

1
我们正在谈论分散措施,因此模型比较不会引起争议(并且不要与“基尼系数”相混淆)。基尼(Gini)的均值差异是绝对度量。比其他措施更容易解释。您需要为每个分布计算一个不同的常数这一事实告诉我,我们不想使用该常数。
Frank Harrell

36

已经有很多不错的答案,但是,退后一步,让您更基础一些,我会说这是因为您得到的答案取决于您提出的问题。均值和中位数回答不同的问题-有时一个是适当的,有时是另一个。

简单地说,当存在离群值,分布偏斜或其他情况时,应使用中位数。但这并非总是如此。拿收入来说-几乎总是报告中位数,通常是正确的。但是,如果您查看整个社区的消费能力,那可能是不正确的。并且在某些情况下,甚至模式也可能是最好的(特别是如果将数据分组)。


8
+1是显而易见的观点,似乎没人能解决:它们是不同的概念,回答不同的问题。同样,在很多情况下,将整个分布压缩为一个汇总数会损失很多,因此有时它们都做得很烂。
Michael McGowan

25

当一个值对我们来说是垃圾时,我们称其为“离群值”,并希望分析对其具有鲁棒性(并希望中值);当相同的值具有吸引力时,我们将其称为“极值”,并希望分析对其敏感(并希望采用均值)。辩证法...

均值对值的变化均等地做出反应,而不管分布在何处发生。例如,1 2 3 4 5您可以将任何值增加2-平均值的增加将是相同的。中位数的反应不太“一致”:将数据点4或5加2,中位数不会增加。但在点2上加2-这样移位就超过了中位数,并且中位数发生了显着变化(大大超过了平均值)。

均值始终精确定位。中位数不是;例如,在设置中,介于2和3之间的1 2 3 4 任何值都可以称为中值。因此,基于中位数的分析并不总是唯一的解决方案。

均值是最小平方和偏差的轨迹。许多基于线性代数的优化任务(包括著名的OLS回归)将平方误差最小化,因此暗示均值概念。最小偏差绝对值总和的中位数。使这种误差最小化的优化技术是非线性的,而且更为复杂/鲜为人知。


2
+1我有点担心第一段可能会被误解,因为这意味着异常值检测完全是一个主观过程。不过,我认为您不是要暗示这个意思。
ub

8
+1 | 我认为第一句话暗示离群值检测的应用完全是主观的,因此我赞成保持原样。
约翰

2
我的意思是,异常检测是具有主观哲学或道德根源的严格程序
ttnphns 2011年

3
@ttnphns,是故意拼写“ outliar”而不是“ outlier”吗?
mpiktas

1
意外的错字。
ttnphns 2011年

16

这个问题有很多答案。这是您可能在其他地方看不到的一个,所以在这里包括它,因为我认为它与该主题有关。人们通常认为,由于中值相对于离群值而言是一种可靠的度量标准,因此它对大多数内容都具有鲁棒性。实际上,偏斜分布的偏见也很可靠。中位数的这两个稳健属性通常一起讲授。可能有人注意到,基本的偏态分布也倾向于生成小的样本,看起来像它们具有异常值,而传统的看法是,在这种情况下使用中位数。

#function to generate random values from a skewed distribution
rexg <- function (n, m, sig, tau) {
    rexp(n, rate = 1/tau) + rnorm(n, mean = m, sd = sig)
    }

(只是证明它是偏斜的和基本形状)

hist(rexg(1e4, 0, 1, 1))

情节

现在,让我们看看如果从该分布中取样各种样本大小并计算中位数和均值以了解它们之间的差异,会发生什么。

#generate values with various n's
N <- 1e4
ns <- 2:30
y <- sapply(ns, function(x) mean(apply(matrix(rexg(x*N, 0, 1, 1), ncol = N), 2, median)))
plot(ns,y, type = 'l', ylim = c(0.85, 1.03), col = 'red') 
y <- sapply(ns, function(x) mean(colMeans(matrix(rexg(x*N, 0, 1, 1), ncol = N))))
lines(ns,y)

情节2

从上图可以看出,中位数(红色)对n的敏感度比平均值高得多。这与有关使用低ns的中值的一些传统观点相反,尤其是在分布可能偏斜的情况下。并且,它强调了平均值是一个已知值,而中位数对其他属性(如果是n)敏感的观点。

这种分析类似于Miller,J.(1988)。关于中值反应时间的警告。实验心理学杂志:人类的知觉和表现14(3):539–543。

改版

考虑偏斜问题后,我认为对中位数的影响可能只是因为在小样本中,中位数处于分布尾部的可能性更大,而平均值几乎总是由更接近于平均值的值加权。模式。因此,也许如果只是以异常值的概率进行采样,那么可能会出现相同的结果。

因此,我想到了可能出现异常值并且实验人员可能试图消除它们的情况。

如果异常值持续发生,例如每一个数据采样中就有一个异常值,则中位数可以抵御此异常值的影响,并且关于中位数的使用的传统说法成立。

但这通常不是事情的发展。

在这种情况下,人们可能会在很少的实验单元中找到异常值,并决定使用中位数而不是均值。同样,中位数更为稳健,但由于异常值很少,因此实际影响相对较小。这肯定是一个比上述情况更为普遍的情况,但使用中位数的影响可能很小,因此无关紧要。

也许更常见的离群值可能是数据的随机成分。例如,总体的真实均值和标准偏差可能约为0,但是从非均值均值为3的异常群体中采样的时间有一定百分比。请考虑以下模拟,其中仅对这样的总体进行采样尺寸。

#generate n samples N times with an outp probability of an outlier.
rout <- function (n, N, outp) {
    outPos <- sample(0:1,n*N, replace = TRUE, prob = c(1-outp,outp))
    numOutliers <- sum(outPos)
    y <- matrix( rnorm(N*n), ncol = N )
    y[which(outPos==1)] <- rnorm(numOutliers, 4)
    return(y)
    }

outp <- 0.1
N <- 1e4
ns <- 3:30
yMed <- sapply(ns, function(x) mean(apply(rout(x,N,outp), 2, median)))
var(yMed)
yM <- sapply(ns, function(x) mean(colMeans(rout(x,N,outp))))
var(yM)
plot(ns,yMed, type = 'l', ylim = range(c(yMed,yM)), ylab = 'Y', xlab = 'n', col = 'red') 
lines(ns,yM)

结果

中位数为红色,平均值为黑色。这与偏态分布的发现相似。

在使用中位数以避免离群值的影响的一个相对实际的示例中,可以想到这样一种情况:使用中位数比使用平均值时,估计值受到n的影响要大得多。


很好的例子,但这实际上取决于分布。如果使用正态分布或均匀分布,则图形会非常不同,两条线是重叠的。产生差异的是指数分布。
nico,

1
-1这个答案将“敏感性”与“偏见”混淆了。
ub

4
好多了; 我已经删除了选票。但是,我对新的解释很感兴趣:您能指出一些消息来源,例如文字,论文或网站吗?它实际上使“ [中位数]也被认为对偏斜分布有偏见”的说法,并解释道那可能是什么意思?我以前没有遇到过这样的说法,也不确定它真正在说什么。
whuber

3
在心理学研究中,它是处理反应时间(已知是偏斜的)的更多民间知识。我引用了一篇论文,该论文驳斥了心理学上的民间智慧(我对不提早引用感到难过)。
约翰

3
顺便说一句,尽管有Miller(1988)的论文,人们仍然在概率操作的研究中使用中值反应时间,其中条件具有不同数量的样本,而较低的样本通常很小。
约翰

11
  • 从平均值可以很容易地计算出所有项目的总和,例如,如果您知道总体的平均收入和总体规模,则可以立即计算整个总体的总收入。

  • 平均值很容易计算O(n)时间复杂度。计算线性时间的中位数是可能的,但需要更多的思考。需要排序的明显解决方案的O(n log n)时间复杂度更高。

而且我推测,均值比中位数更受欢迎的另一个原因是:

  • 在学校向更多人教授平均值,并且可能在教授中位数之前

对于您的时间复杂性点,这取决于如何存储值。如果已经对这些值进行了排序,那么当然可以计算O(1)最坏情况时间复杂度的中值。
luiscubal 2011年

我同意-它在求和之类的计算中的适用性是均值的主要优势之一。当目标是描述某事物时,我经常偏爱中位数,而当它是另一种计算的输入时,我们经常使用均值。
乔纳森

5

“众所周知,中位数可以抵抗离群值。如果是这样,那么我们何时以及为何首先使用均值?”

如果有人知道没有异常值,例如当有人知道数据生成过程时(例如在数学统计中)。

应该指出的是,这两个量(平均值和中位数)实际上并不能衡量同一事物,并且大多数用户在真正应该对后者感兴趣时会要求前者(这一点很好地说明了这一点)基于中位数的Wilcoxon检验(比t检验更容易解释)。

然后,在某些情况下,出于某些偶然原因或其他原因,某些规定强加了他的意思。


2

如果担心存在异常值,可以使用一些简单的方法来检查数据。

当在生成数据的过程或在收集数据的过程中发生某些变化时,离群值几乎会被定义为我们的数据。即数据不再是同质的。如果您的数据不均一,则均值和中位数都无济于事,因为您正试图估计已混合在一起的两个独立数据集的集中趋势。

确保同质性的最佳方法是检查数据生成和收集过程,以确保所有数据都来自一组过程。在这里,没有什么能比动脑筋了。

作为辅助检查,您可以使用几种统计检验之一:卡方检验,Dixon Q检验,Grubb检验或控制图/过程行为图(通常是X-bar R或XmR)。我的经验是,当可以按收集的顺序对数据进行排序时,与异常值测试相比,过程行为图在检测异常值方面更好。图表的这种用法可能会引起争议,但我认为这完全与Shewhart的初衷是一致的,唐纳德·惠勒(Donald Wheeler )明确提倡这种用法。无论您使用异常值测试还是过程行为图,请记住,检测到的“异常值”仅表示潜在的信号非均质性,需要进一步检查。如果您对数据点为何离群值没有任何解释,则抛出数据点几乎没有任何意义。

如果您使用的是R,则离群值软件包将提供离群值测试,对于过程行为图表,将提供qcc,IQCC和qAnalyst。我对qcc软件包的用法和输出有个人偏好。


2

您什么时候想要这个意思?

财务示例:

  • 债券收益:
    • 债券收益率的中位数通常为几个百分点。
    • 平均债券收益率可能偏低或偏高,具体取决于违约率和违约率。中位数将忽略所有这一切!
    • 祝您好运,向您的投资者解释:“我知道我们的基金今年下跌了40%,因为几乎有一半的债券破产了而没有复苏,但是我们的债券中位数却返回了1%!”
  • 风险投资回报:
    • 反之亦然。风险投资或天使投资的中位数是萧条,所有回报都来自少数赢家!(旁注/警告:风险资本或私募股权收益的估算存在很大问题……要小心!)

当形成一个多元化的投资组合时,决定要投资什么以及投资多少,收益的均值和协方差很可能成为优化问题的重要因素。


同意,但是在所有这些情况下,均值或中位数似乎都不是重点:相反,总数可能是关键数量。自然地,这反过来意味着摘要比中位数更好。但是,考虑到债券收益率的中位数可能是一个愚蠢的答案,但是有人提议吗?
尼克·考克斯

@NickCox两个评论。(1)债券收益率的中位数是愚蠢的!这些答案有很好的理论,但我认为一个非常简单的示例可能会增加一些色彩。引用弗兰克的回答,“使用均值是因为它对数据敏感”,而投资组合收益给出了您想要的简单易懂的情况。(2)关心“总计”与关心“平均”之间的区别可能变得很模糊。“我应该投资对冲基金吗?” 要回答这个问题,也许我想知道,“对冲基金的平均回报是多少?”
马修·冈恩

1
(1)如上所述,我同意;我的问题仅仅是为此目的在教学或研究文献中是否认真提到了中位数。(2)我认为我的观点不明确;这是一个简单的问题,首先要做什么,即实际上最重要的是什么。我看到头条新闻“帮派共入狱200年”,我知道为什么要打印这些头条,但这仍然是总结的一种奇怪方式。相反,在一系列灾难中200人死亡是主要灾难,而不是5次灾难,平均每场40人死亡。(小)问题是选择最适合的摘要语句。
尼克·考克斯

@NickCox点已采取。我同意您关心自己的投资总额。但是,在形成投资组合并确定特定证券的投资组合权重时,您将需要注意该证券收益的属性。我不会购买所有市政债券,我并不直接在乎总数,但我确实在乎市政债券的平均收益是多少?如果我要向投资组合中添加一些资产,则风险/回报属性是什么?
马修·冈恩

同意 那就是这里的领土。
尼克·考克斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.