格式略有错乱,连原笔记入口

标准差

标准差可以描述样本中的数据分布。计算标准差首先要做一些其他计算。按照这些步骤就可以快速简便地建立等式。

计算器

计算平均数

1. 找出平均数。平均数是样本的平均值,把样本数据加起来然后除以样本数据个数就可以得到。例如:

  • 样本:53, 61, 49, 67, 55, 63
  • 53 + 61 + 49 + 67 + 55 + 63 = 348
  • 348 / 6 = 58
  • 平均数 = 58

计算方差

2. 找出方差。方差是数据偏离平均数的程度。得到方差首先要计算单个样本数据和平均数的差,然后平方,再求平均数。例如:
- 计算如下:

(53-58)^2 + (61-58)^2 + (49-58)^2 + (67-58)^2 + (55-58)^2 + (63-58)^2
=(-5)^2 + 3^2 + (-9)^2 + 9^2 + (-3)^2 + 5^2 = 230
230 / 6 = 38.33333
  • 注意,如果样本数据很大,可以除以n-1。所以这里方差可以被计算为:
230 / (6-1) = 46

开方得到标准差

3. 方差开方即得到标准差。标准差会告诉你数据域平均数的离散程度,约68%的样本数据在一个标准差范围内,如:

\sqrt{38.3333} = 6.19139
  • 每6个数,就有4个与平均数的偏差在6.19139范围内

Python pandas:

import pandas as pd

s1 = pd.Series([1,4,9,14])
s2 = pd.Series([5,6,8,9])
s3 = pd.Series([1,2,3,4,5])
s4 = pd.Series([1,2,3,4,5,6])


df = pd.DataFrame({ 'a': s1, 'b': s2 , 'c': s3, 'd':s4})
df.describe()

输出如下:

a b c d
count 4.000000 4.000000 5.000000 6.000000
mean 7.000000 7.000000 3.000000 3.500000
std 5.715476 1.825742 1.581139 1.870829
min 1.000000 5.000000 1.000000 1.000000
25% 3.250000 5.750000 2.000000 2.250000
50% 6.500000 7.000000 3.000000 3.500000
75% 10.250000 8.250000 4.000000 4.750000
max 14.000000 9.000000 5.000000 6.000000

手工验证a列:

1,4,9,14

草稿纸


==记一下,什么时候n,什么时候n-1:==

  • n是求样本中心距的,n-1才是求样本标准差的
  • 当数据较多时,用n除,得到标准差的有偏估计;
  • 当数据较少时,用n-1除,得到标准差的无偏估计;
  • 当数据较多时,二者数值上差别不大;
  • 当数据较小时,二者差别略大.