Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >为什么中位数(大多数时候)比平均值好

为什么中位数(大多数时候)比平均值好

作者头像
deephub
发布于 2020-06-01 08:41:31
发布于 2020-06-01 08:41:31
3.8K0
举报
文章被收录于专栏:DeepHub IMBADeepHub IMBA

开始我的数据分析冒险之旅,我发现了解数据描述的主要统计方法是非常必要的。当我深入研究时,我意识到我很难理解为给定的数据选择哪个集中趋势指标有三种:平均值,中位数和众数。

所以我决定写这篇文章来帮助像我一样在这个领域里的新人来弄明白这一点,而不是害怕数据和统计。这里我们使用Pandas和世界人口的数据来做说明。

首先,我们应该把数据用于探索。我在Kaggle上找到了一个很好的数据集:这个国家的统计数据。它代表了全世界所有国家的经济、社会、基础设施和环境指标。对于我们的研究,我们只需要这个数据框架中的三列:国家名称、地理位置和人口。

https://www.kaggle.com/sudalairajkumar/undata-country-profiles/data

现在我们可以进入我们的问题:我们应该使用哪种集中趋势度量来研究数据,以及为什么。

最简单的部分是关于众数(mode)。它只是行或列中所有值中最常见的值——仅此而已。这是数据中最“流行”的数字。

我们只对非数值使用众数(mode)。为了找到它,我们必须计算一个特定的单元出现在给定列中的频率。结果最好的单位是我们正在寻找的众数(mode)。

在我们的数据集中,我们只能对region列应用一个关于众数(mode)的问题,region列是表中唯一一个有意义的列。因为在Country列中所有的值都是不同的,而在Population列中它们是数字。

我事先清理了这列数据,只留下了五大洲的名称(取而代之的是南亚-亚洲等等)。

很好。这意味着大多数国家都位于非洲大陆。这并不奇怪,对吧?

现在让我们转到平均值和中值。这两个值都显示了行中心的数字。但方式不同。

平均值是一个平均值(这好像是废话),我们可以通过汇总一行中的所有值,然后将结果除以它们的数量来计算它。让我们看看人口。为了计算平均值,我们应该将所有国家的人口值相加,然后除以数据集中的国家数。幸运的是,pandas可以为我们做这件事。

这个数字表明,在一个正常的国家,平均生活着大约3300万人。

中位数也显示了一个平均数。但它正好是行中间的值。如果我们将总体值从最小到最大排序,则在该排序行的中间位置,中值为:

根据中位数,一个国家的平均人口只有大约550万。根据平均数,它比平均人口要小得多。怎么会这样?

通常中位数和中位数是相当接近的。如果不是,那么问题就出在异常值中—这些值与行中的所有其他值都非常不同。让我们做一个小图形。

我们看到,大多数国家都集中在零附近。但有些数值与众不同。虽然这些点很小,但我们可以看到其中一些点超过2亿,其中两个点接近10亿4亿。对于平均值的计算来说这些都是异常值 因为这就是均值的本质——把所有值都考虑在内。而中位数没有这个缺点。

统计量的稳健性和有效性,以及实际运用时的计算复杂度这三点是数据统计中最重要的衡量标准

平均数是总体均值很好的估计,中位数是对总体中心很好的估计,如果数据是来自某对称未知分布时,估计均值和估计中心是等价的,这时候中位数的效率要比均值低不少

就稳健性而言,显然是中位数更好的,常见的衡量稳健性的指标是崩溃点,即能使统计量“失真”的最大比例,对于均值,只需要有一个点离得无穷大,均值就会无穷大,但改变中位数至无穷大,你最多可以移动一半的数据,所以中位数要比均值稳健的多

最后是计算的复杂性,均值只需要求和除,但中位数,我的理解的话,至少要排个序吧,排序的复杂度应该比直接加要复杂一些,而且很多数据的样本量都特别大,这时候计算均值要方便不少,所以为了简单才会有很多使用平均值计算的情况。

最后:我们可以通过这三个值来简单的查看数据的分布情况,比如:正态分布是单峰对称分布,所以中位数、平均数和众数三个参数都位于对称中心,三者是相等的。

作者:Olga Shebeko

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DeepHub IMBA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
HDU4609 3-idiots(生成函数)
但是如果直接算合法的方案的话会出现一点问题。我们在算的时候维护了一个后缀和表示乘起来大于等于这个数的方案。我们要求的方案需要满足i < j < k,但是这样计算可能会出现不合法的情况。
attack
2019/03/19
6990
BZOJ4827: [Hnoi2017]礼物(FFT 二次函数)
题意 题目链接 Sol 越来越菜了。。裸的FFT写了1h。。 思路比较简单,直接把 \(\sum (x_i - y_i + c)^2\) 拆开 发现能提出一坨东西,然后与c有关的部分是关于C的二次函数可以直接算最优取值 剩下的要求的就是\(max (\sum x_i y_i)\) 画画图就知道把y序列倒过来就是个裸的FFT了。 #include<bits/stdc++.h> #define Pair pair<int, int> #define MP(x, y) make_pair(x, y) #defi
attack
2019/03/05
3080
loj#6074. 「2017 山东一轮集训 Day6」子序列(矩阵乘法 dp)
然后发现可以用矩阵优化,可以分别求出前缀积和逆矩阵的前缀积(这题的逆矩阵炒鸡好求)
attack
2019/04/01
5280
loj#6073. 「2017 山东一轮集训 Day5」距离(费用流)
我们可以把图行列拆开,同时对于行/列拆成很多个联通块,然后考虑每个点所在的行联通块/列联通块的贡献。
attack
2019/04/01
4120
SDOI 2018二轮题解(除Day2T1)
然鹅学了不到一个月文化课再回来看OI的东西有一种恍如隔世的感觉,烤前感觉也没啥可复习的,就补一补去年二轮的题吧。
attack
2019/05/14
5370
洛谷P4561 [JXOI2018]排序问题(二分 期望)
一次排好的概率是个数数题,他等于一次排好的方案除以总方案,也就是\(\frac{\prod cnt_{a_i}!}{(n+m)!}\)。因为最终的序列是一定的,两个序列不同当且仅当权值相同的数排列方式不同。
attack
2019/03/11
3770
loj#6041. 「雅礼集训 2017 Day7」事情的相似度(SAM set启发式合并 二维数点)
只会后缀数组+暴躁莫队套set\(n \sqrt{n} \log n\)但绝对跑不过去。
attack
2019/04/01
5890
loj#6073. 「2017 山东一轮集训 Day5」距离(树链剖分 主席树)
首先对询问差分一下,我们就只需要统计\(u, v, lca(u, v), fa[lca(u, v)]\)到根的路径的贡献。
attack
2019/04/01
3670
loj#2565. 「SDOI2018」旧试题(反演 三元环计数)
题意 题目链接 Sol 神仙反演题。在洛谷上疯狂被卡常 Orz shadowice #include<bits/stdc++.h> #define Pair pair<int, int> #define MP make_pair #define fi first #define se second #define LL long long const int MAXN = 2e5 + 10, mod = 1e9 + 7; using namespace std; template <typename
attack
2019/03/04
3550
LOJ#2552. 「CTSC2018」假面(期望 背包)
转移的时候若要淦这个人,那么\(f[i][j] = (f[i - 1][j] + 1) * p + (f[i - 1][j]) * (1 - p)\)
attack
2018/11/20
5360
洛谷P2664 树上游戏(点分治)
考虑点分治,那么每次我们只需要统计以当前点为\(LCA\)的点对之间的贡献以及\(LCA\)到所有点的贡献。
attack
2019/04/09
5460
cf1097D. Makoto and a Blackboard(期望dp)
首先考虑当\(n = p^x\),其中\(p\)是质数,显然它的因子只有\(1, p, p^2, \dots p^x\)(最多logn个)
attack
2019/01/30
3510
BZOJ3122: [Sdoi2013]随机数生成器(BSGS)
直接把\(X_{i+1} = (aX_i + b) \pmod P\)展开,推到最后会得到这么个玩意儿
attack
2019/03/29
7900
loj#2002. 「SDOI2017」序列计数(dp 矩阵乘法)
质数的限制并没有什么卵用,直接容斥一下:答案 = 忽略质数总的方案 - 没有质数的方案
attack
2019/03/04
4930
洛谷P4007 小 Y 和恐怖的奴隶主(期望dp 矩阵乘法)
首先不难想到一种暴力dp,设\(f[i][a][b][c]\)表示还有\(i\)轮没打,场上有\(a\)个1血,\(b\)个2血,\(c\)个三血
attack
2019/03/04
4240
loj#2049. 「HNOI2016」网络(set 树剖 暴力)
因为从一个点向上只会跳\(logn\)次,所以可以暴力的把未经过的处理出来然后每个点开个multiset维护最大值
attack
2019/03/15
3630
洛谷P4589 [TJOI2018]智力竞赛(二分答案 二分图匹配)
多读读题就会发现题目要求的就是可相交的最小路径覆盖,那么按照套路先floyd一遍,如果能联通的话就再二分图中加边,然后判一下最大匹配数就行了。刚开始以为因为有的点可以不选,要在匈牙利的时候进行玄学贪心,其实是不用的,因为我们已经求过传递闭包了。所以直接求就是对的
attack
2019/03/19
4510
cf1121F. Compress String(后缀自动机)
题意 题目链接 Sol 居然出个SAM板子也是没谁了233 #include<bits/stdc++.h> #define Pair pair<int, int> #define MP(x, y) make_pair(x, y) #define fi first #define se second //#define int long long #define LL long long #define Fin(x) {freopen(#x".in","r",stdin);} #define Fout(
attack
2019/03/15
4580
东南亚的 ICPC ,真的比国内的简单吗?
不少同学们总是会感叹说国内无论什么比赛都是内卷严重,那东南亚的 ICPC 比赛真的会比国内的容易吗?
ACM算法日常
2021/11/10
7540
洛谷P4027 [NOI2007]货币兑换(dp 斜率优化 cdq 二分)
设\(f[i]\)表示到第\(i\)天所持有软妹币的最大数量,显然答案为\(max_{i = 1}^n f[i]\)
attack
2019/01/03
3940
推荐阅读
相关推荐
HDU4609 3-idiots(生成函数)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档