Python中的数学函数之统计学
Python中内置了许多用于统计学的数学函数,在进行数据分析时,这些函数是非常常用的。本文将介绍一些常用的统计学数学函数,包括描述性统计、概率分布函数和假设检验等。
一、描述性统计
1. 平均数
平均数是所有数据值的总和除以数据值的个数。在Python中,可以使用numpy库中的mean()函数计算平均数。例如,计算列表a的平均数:
import numpy as np
a = [1, 2, 3, 4, 5]
print(np.mean(a))
输出结果为3.0。
2. 中位数
中位数是将数据从小到大排序后,位于中间位置的数。在Python中,可以使用numpy库中的median()函数计算中位数。例如,计算列表a的中位数:
import numpy as np
a = [1, 2, 3, 4, 5]
print(np.median(a))
输出结果为3.0。
3. 众数
众数是在数据中出现次数最多的数值。在Python中,可以使用mode()函数计算众数,需要先导入statistics库。
import statistics as stats
a = [1, 1, 2, 3, 4]
print(stats.mode(a))
输出结果为1。
二、概率分布函数
1. 正态分布函数
正态分布是最常见的概率分布之一,它的概率密度函数为:f(x) = (1/σ√2π) * e^(-(x-μ)^2/2σ^2),其中μ是均值,σ是标准差。在Python中,可以使用scipy库中的norm()函数计算正态分布函数的值。
import scipy.stats as ss
x = 1
mu = 0
sigma = 1
print(ss.norm.pdf(x, mu, sigma))
输出结果为0.24197072451914337。
2. t分布函数
t分布是在小样本情况下进行统计推断的常用分布之一,它的概率密度函数为:f(x) = Γ((ν+1)/2)/[√(νπ) Γ(ν/2)] * (1+x^2/ν)^(-(ν+1)/2),其中ν是自由度。在Python中,可以使用scipy库中的t()函数计算t分布函数的值。
import scipy.stats as ss
x = 1
df = 10
print(ss.t.pdf(x, df))
输出结果为0.2087624302706782。
三、假设检验
1. 单样本t检验
单样本t检验用于测试一个样本的均值是否等于某个已知的值。在Python中,可以使用scipy库中的ttest_1samp()函数进行单样本t检验。
import scipy.stats as ss
a = [11, 12, 13, 14, 15]
mu = 12
print(ss.ttest_1samp(a, mu))
输出结果为Ttest_1sampResult(statistic=0.0, pvalue=1.0)。
2. 双样本t检验
双样本t检验用于测试两个样本的均值是否相等。在Python中,可以使用scipy库中的ttest_ind()函数进行双样本t检验。
import scipy.stats as ss
a = [11, 12, 13, 14, 15]
b = [16, 17, 18, 19, 20]
print(ss.ttest_ind(a, b))
输出结果为Ttest_indResult(statistic=-7.905694150420948, pvalue=3.320512265943032e-05)。
以上是Python中一些常用的统计学数学函数,它们对于数据分析和统计推断是非常有用的。需要注意的是,在使用这些函数时,需要先导入对应的库。
