Hi,我是山月。
之前给大家介绍了min()、max()、sum()、mean()、count()、size()、median()函数的用法实例。
今天继续给大家介绍的统计汇总函数里的:
var() | 计算方差 |
std() | 计算标准差 |
quantile() | 计算任意分位数 |
cov() | 计算协方差 |
corr() | 计算相关系数 |
skew() | 计算偏度 |
kurt() | 计算峰度 |
mode() | 计算众数 |
今天的这些函数使用起来都很简单,但是有些小伙伴可能对函数所代表的意义并不是很清楚,比如方差是什么?
所以这里先给大家来介绍下几个术语。
1、方差
样本中每个数据与其样品平均数的差的平方和的平均数。
方差越小,表示数据越集中;方差越大,表示数据越分散。
2、标准差
是方差的算术平方根。
标准差也是用来反映一个数据集的离散程度。
3、分位数
将一个随机变量的概率分布范围分为几个等份的数值点,常用的有中位数(即二分位数)、四分位数、百分位数等。
中位数:把所有的同类数据按照大小的顺序排列。
如果数据的个数是奇数,则中间那个数据就是这群数据的中位数;
如果数据的个数是偶数,则中间那2个数据的平均值就是这群数据的中位数。
等同于使用median()函数。
四分位:即把所有数值由小到大排列并分成四等份,处于三个分割点位置的数值就是四分位数。
4、协方差
表示两个变量的总体误差。
5、相关系数
是研究变量之间线性相关程度的量。
6、偏度
是统计数据分布偏斜方向和程度的度量。
若以bs表示偏度。
bs<0称分布具有负偏离,也称左偏态,此时数据位于均值左边的比位于右边的少,直观表现为左边的尾部相对于与右边的尾部要长;
bs>0称分布具有正偏离,也称右偏态,此时数据位于均值右边的比位于左边的少,直观表现为右边的尾部相对于与左边的尾部要长;
而bs接近0则可认为分布是对称的。
7、峰度
表征概率密度分布曲线在平均值处峰值高低的特征数。
直观看来,峰度反映了峰部的尖度。正态分布的峰度为3。
8、众数
是一组数据中出现次数最多的数值,有时众数在一组数中有好几个。
用到的表格数据如下:
代码:
import pandas as pd
scores = pd.read_excel("学生成绩.xlsx", sheet_name="Sheet1") # 读取表格数据
sum_score = scores["总分"] # 提取总分的数据
print(sum_score.head(40))
print('------')
var_score = sum_score.var()
print('总分的方差是:%s'%var_score)
std_score = sum_score.std()
print('总分的标准差是:%s'%std_score)
print('------')
print('总分的中位数是:%s'%sum_score.median())
quantile_05_score = sum_score.quantile(q=0.5)
print('总分的中位数是:%s'%quantile_05_score)
quantile_025_score = sum_score.quantile(q=[.25, .5, .75])
print('总分的三个四分位数是:\n%s'%quantile_025_score)
print('------')
skew_score = sum_score.skew()
print('总分的偏度是:%s'%skew_score)
kurt_score = sum_score.kurt()
print('总分的峰度是:%s'%kurt_score)
mode_score = sum_score.mode()
print('总分的众数是:\n%s'%mode_score)
print('------')
chinese_score = scores["语文"] # 提取语文的数据
math_score = scores["数学"] # 提取数学的数据
cov_score = chinese_score.cov(math_score)
print('语文与数学的协方差:%s'%cov_score)
corr_score = chinese_score.corr(math_score, method='pearson')
'''
method可设置值:{‘pearson’, ‘kendall’, ‘spearman’} or callable
pearson : 标准相关系数
kendall : Kendall Tau相关系数
spearman : Spearman等级相关
callable:可通过输入两个一维数组并返回一个浮点数来调用
'''
print('语文与数学的相关系数:%s'%corr_score)
'''
0 192
1 240
2 189
3 249
4 216
5 248
6 200
7 203
8 227
9 211
10 231
11 213
12 209
13 228
14 227
15 238
16 241
17 238
18 249
19 215
20 229
21 253
22 198
23 226
24 213
25 236
26 195
27 211
28 201
29 221
30 276
31 259
32 212
33 239
34 217
35 227
36 211
37 230
38 234
39 210
Name: 总分, dtype: int64
------
总分的方差是:384.3051282051282
总分的标准差是:19.60370190053726
------
总分的中位数是:226.5
总分的中位数是:226.5
总分的三个四分位数是:
0.25 211.0
0.50 226.5
0.75 238.0
Name: 总分, dtype: float64
------
总分的偏度是:0.3602792391121246
总分的峰度是:-0.06970484299999313
总分的众数是:
0 211
1 227
dtype: int64
------
语文与数学的协方差:-24.728205128205133
语文与数学的相关系数:-0.12899982136845278
'''
--- End ---