◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
一周统计学速成:一场略带讽刺的深度探索
本周,我们将深入浅出地探讨统计学的核心概念,力求以严谨的技术手法解释基本原理,并辅以轻松的讽刺,让学习过程更轻松有趣。本文将详细分解我的统计学习之旅,涵盖理论知识、实际案例和 Python 代码实现。
描述性统计是将原始数据进行总结和整理,使其更易于理解和解释的工具。它是数据分析的第一步,为后续分析奠定基础。
import numpy as np from scipy import stats # 样本数据 data = [12, 15, 14, 10, 12, 17, 18] mean = np.mean(data) median = np.median(data) mode = stats.mode(data).mode[0] print(f"平均数: {mean}, 中位数: {median}, 众数: {mode}")
集中趋势度量展现了数据的中心位置,而离散度度量则反映了数据的离散程度或波动性。
std_dev = np.std(data, ddof=1) # 样本标准差 variance = np.var(data, ddof=1) # 样本方差 print(f"标准差: {std_dev}, 方差: {variance}")
概率分布描述了随机变量取值的概率分布情况。
from scipy.stats import norm # 正态分布的 PDF 和 CDF x = np.linspace(-3, 3, 100) pdf = norm.pdf(x, loc=0, scale=1) cdf = norm.cdf(x, loc=0, scale=1) print(f"x=1 处的 PDF: {norm.pdf(1)}") print(f"x=1 处的 CDF: {norm.cdf(1)}")
import matplotlib.pyplot as plt samples = np.random.normal(0, 1, 1000) plt.hist(samples, bins=30, density=True, alpha=0.6, color='g') plt.title('正态分布') plt.show()
推断统计允许我们根据样本数据对总体进行推断。
from scipy.stats import ttest_1samp # 样本数据 data = [1.83, 1.91, 1.76, 1.77, 1.89] population_mean = 1.80 statistic, p_value = ttest_1samp(data, population_mean) print(f"t 统计量: {statistic}, p 值: {p_value}")
CLT 指出,无论总体分布如何,样本均值的分布都随着样本量的增加而趋近于正态分布。
sample_means = [np.mean(np.random.randint(1, 100, 30)) for _ in range(1000)] plt.hist(sample_means, bins=30, density=True, alpha=0.6, color='b') plt.title('中心极限定理') plt.show()
本周,我们对统计学这门引人入胜(有时也略显枯燥)的学科进行了深入探索。从数据概述到概率分布再到统计推断,这是一段充满收获的学习旅程。让我们继续探索数据科学的奥秘,一起披荆斩棘!
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。