众所周知,中位数可以抵抗异常值。如果是这样,我们何时以及为什么要首先使用均值?
我能想到的一件事可能是了解离群值的存在,即,如果中位数距离均值较远,则分布偏斜,也许需要检查数据以确定对离群值要做什么。还有其他用途吗?
众所周知,中位数可以抵抗异常值。如果是这样,我们何时以及为什么要首先使用均值?
我能想到的一件事可能是了解离群值的存在,即,如果中位数距离均值较远,则分布偏斜,也许需要检查数据以确定对离群值要做什么。还有其他用途吗?
Answers:
从某种意义上说,使用平均值是因为它对数据敏感。如果分布恰好是对称分布,并且尾部近似于正态分布,则均值是集中趋势的非常有效的总结。中位数虽然对于任何连续分布都具有鲁棒性和良好的定义,但如果数据碰巧来自正态分布,则其效率仅为平均值的。正是中位数的这种相对低效率,使我们无法使用它甚至超过我们。当样本量变大时,相对效率低下会转化为较小的绝对效率低下,因此对于较大的我们可以更轻松地使用中位数。 ñ
有趣的是,对于变化(扩展,离散)的度量,有一个非常强大的估计器,其效率是标准偏差(即基尼平均差)的0.98。这是任何两个观察值之间的平均绝对差。[您必须将样本标准差乘以一个常数才能估计由基尼平均差估计的相同量。]集中趋势的有效度量是Hodges-Lehmann估计量,即所有成对均值的中位数。如果它的解释更简单,我们将更多地使用它。
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倍。也可以有效地获得一个置信区间会很好。
已经有很多不错的答案,但是,退后一步,让您更基础一些,我会说这是因为您得到的答案取决于您提出的问题。均值和中位数回答不同的问题-有时一个是适当的,有时是另一个。
简单地说,当存在离群值,分布偏斜或其他情况时,应使用中位数。但这并非总是如此。拿收入来说-几乎总是报告中位数,通常是正确的。但是,如果您查看整个社区的消费能力,那可能是不正确的。并且在某些情况下,甚至模式也可能是最好的(特别是如果将数据分组)。
当一个值对我们来说是垃圾时,我们称其为“离群值”,并希望分析对其具有鲁棒性(并希望中值);当相同的值具有吸引力时,我们将其称为“极值”,并希望分析对其敏感(并希望采用均值)。辩证法...
均值对值的变化均等地做出反应,而不管分布在何处发生。例如,1 2 3 4 5
您可以将任何值增加2-平均值的增加将是相同的。中位数的反应不太“一致”:将数据点4或5加2,中位数不会增加。但在点2上加2-这样移位就超过了中位数,并且中位数发生了显着变化(大大超过了平均值)。
均值始终精确定位。中位数不是;例如,在设置中,介于2和3之间的1 2 3 4
任何值都可以称为中值。因此,基于中位数的分析并不总是唯一的解决方案。
均值是最小平方和偏差的轨迹。许多基于线性代数的优化任务(包括著名的OLS回归)将平方误差最小化,因此暗示均值概念。最小偏差绝对值总和的中位数。使这种误差最小化的优化技术是非线性的,而且更为复杂/鲜为人知。
这个问题有很多答案。这是您可能在其他地方看不到的一个,所以在这里包括它,因为我认为它与该主题有关。人们通常认为,由于中值相对于离群值而言是一种可靠的度量标准,因此它对大多数内容都具有鲁棒性。实际上,偏斜分布的偏见也很可靠。中位数的这两个稳健属性通常一起讲授。可能有人注意到,基本的偏态分布也倾向于生成小的样本,看起来像它们具有异常值,而传统的看法是,在这种情况下使用中位数。
#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)
从上图可以看出,中位数(红色)对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的影响要大得多。
从平均值可以很容易地计算出所有项目的总和,例如,如果您知道总体的平均收入和总体规模,则可以立即计算整个总体的总收入。
平均值很容易计算O(n)
时间复杂度。计算线性时间的中位数是可能的,但需要更多的思考。需要排序的明显解决方案的O(n log n)
时间复杂度更高。
而且我推测,均值比中位数更受欢迎的另一个原因是:
如果担心存在异常值,可以使用一些简单的方法来检查数据。
当在生成数据的过程或在收集数据的过程中发生某些变化时,离群值几乎会被定义为我们的数据。即数据不再是同质的。如果您的数据不均一,则均值和中位数都无济于事,因为您正试图估计已混合在一起的两个独立数据集的集中趋势。
确保同质性的最佳方法是检查数据生成和收集过程,以确保所有数据都来自一组过程。在这里,没有什么能比动脑筋了。
作为辅助检查,您可以使用几种统计检验之一:卡方检验,Dixon Q检验,Grubb检验或控制图/过程行为图(通常是X-bar R或XmR)。我的经验是,当可以按收集的顺序对数据进行排序时,与异常值测试相比,过程行为图在检测异常值方面更好。图表的这种用法可能会引起争议,但我认为这完全与Shewhart的初衷是一致的,唐纳德·惠勒(Donald Wheeler )明确提倡这种用法。无论您使用异常值测试还是过程行为图,请记住,检测到的“异常值”仅表示潜在的信号非均质性,需要进一步检查。如果您对数据点为何离群值没有任何解释,则抛出数据点几乎没有任何意义。
如果您使用的是R,则离群值软件包将提供离群值测试,对于过程行为图表,将提供qcc,IQCC和qAnalyst。我对qcc软件包的用法和输出有个人偏好。
您什么时候想要这个意思?
当形成一个多元化的投资组合时,决定要投资什么以及投资多少,收益的均值和协方差很可能成为优化问题的重要因素。