5. 离散趋势 – 标准差(Standard Deviation)

5.1 介绍

标准差是用于度量数据集中数值分散程度的统计指标,是方差的平方根。标准差越大,表示数据的分散程度越大,反之亦然。

5.2 原理

标准差就是方差的平方根。我们之所以再开一次根号,是因为方差的单位被平方了,比如成绩的方差单位是“分数的平方”,不太直观;标准差回到原始单位,更适合解释。

对应前面的两个版本:

图片[1]-5. 离散趋势 – 标准差(Standard Deviation)-大赛人网

5.3 重点和注意事项

  • 重点: 标准差提供了关于数据分散程度的直观度量,是了解数据分布广度的重要工具。
  • 注意事项:
    • 标准差的单位与原始数据的单位一致。
    • 标准差受极端值的影响较大,对异常值敏感。

5.4 完整案例

考虑一个案例:某班级学生的考试成绩。我们想计算学生们的考试成绩的标准差,并绘制直方图以展示数据分布情况。

数据:

考试成绩数据:[75, 82, 90, 65, 88, 78, 94, 70]
图片[2]-5. 离散趋势 – 标准差(Standard Deviation)-大赛人网

Python代码:

import numpy as np
import matplotlib.pyplot as plt

# 考试成绩数据
exam_scores = np.array([75, 82, 90, 65, 88, 78, 94, 70])

# 计算平均值
mean_score = np.mean(exam_scores)

# 计算每个数据点与平均值的偏离
deviations = exam_scores - mean_score

# 计算每个偏离的平方
squared_deviations = deviations ** 2

# 计算总体方差和样本方差
population_variance = np.mean(squared_deviations)
sample_variance = np.var(exam_scores, ddof=1)

# 计算总体标准差和样本标准差
population_std = np.sqrt(population_variance)
sample_std = np.sqrt(sample_variance)

# 绘制直方图
plt.hist(exam_scores, bins=5, alpha=0.7, color='blue', edgecolor='black', label='Exam Scores Distribution')

# 添加标题和标签
plt.title('Exam Scores Distribution and Standard Deviation')
plt.xlabel('Exam Scores')
plt.ylabel('Frequency')

# 显示图表
plt.show()

print("Population standard deviation of exam scores:", population_std)
print("Sample standard deviation of exam scores:", sample_std)
# Population standard deviation of exam scores: 9.470348462437906
# Sample standard deviation of exam scores: 10.124228365658293

以上代码计算了考试成绩的标准差。你会看到样本标准差略大一些,这是因为分母从 n变成了 n−1,对小样本尤其明显。

图片[3]-5. 离散趋势 – 标准差(Standard Deviation)-大赛人网
© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发
头像-大赛人网
欢迎您留下宝贵的见解!
提交
头像-大赛人网

昵称

取消
昵称

    请登录后查看评论内容