scipy.stats与统计学:4个概率分布:N,chi2,F,t

时间:2022-06-26 08:08:41

scipy.stats与统计学:4个概率分布:N,chi2,F,t

 

四个常用分布的概率密度函数、分布函数、期望、分位数、以及期望方差标准差中位数原点矩:

1,正态分布:

from scipy.stats import norm

(1)概率密度函数:

norm.pdf(x, mu, sigma)               # 返回N(mu,sigma^2)的概率密度函数在 x 处的值

(2)概率分布函数:

norm.cdf(x, mu, sigma)               # 返回N(mu,sigma^2)的概率密度函数在 负无穷 到 x 上的积分,也就是概率分布函数的值
norm.sf(x, mu, sigma)                # 返回 1 - norm.cdf(x, mu, sigma^2)

(3)数学期望:

norm.expect( func = f, loc = mu, scale = sigma )       # 返回f(x)的期望,注意这里的loc和scale

(4)分位数:

norm.isf(1-alpha, mu, sigma)         # 返回值s满足:norm.cdf(s, mu, sigma^2) = alpha,s就是alpha分位数
norm.ppf(alpha, mu, sigma)           # 返回值s满足:norm.cdf(s, mu, sigma^2) = alpha,s就是alpha分位数

(5)最大似然估计:

norm.fit(a)                                 # 假定数组a来自正态分布,返回mu和sigma的最大似然估计。感觉结果不咋地。。

(6)分布的数量关系:

norm.mean(mu,sigma)                         # N(mu,sigma^2) 的均值
norm.var(mu,sigma)                          # N(mu,sigma^2) 的方差
norm.std(mu,sigma)                          # N(mu,sigma^2) 的方差再开平方根
norm.median(mu,sigma)                       # N(mu,sigma^2) 的中位数
norm.moment(a,mu,sigma)                     # N(mu,sigma^2) 的 a 阶原点矩

(7)产生满足正态分布的随机数:

norm.rvs(loc = mu,scale = sigma, size = N)       # 产生N个服从N(mu,sigma^2)的随机数

2,卡方分布:chi2

from scipy.stats import chi2

(1)概率密度函数:

chi2.pdf(x, n)                       # 返回\chi^2(n)的概率密度函数在 x 处的值

(2)概率分布函数:

chi2.cdf(x, n)                       # 返回\chi^2(n)的概率密度函数在 0 到 x 上的积分,也就是概率分布函数的值
chi2.sf(x, n)                        # 返回 1 - chi2.cdf(x, n)

(3)数学期望:

chi2.expect( func = f , args=(n,) )  # 返回f(x)的期望

(4)分位数:

chi2.isf(1-alpha, n)                 # 返回值s满足:chi2.cdf(s, n) = alpha,  s就是alpha分位数
chi2.ppf(alpha, n)                   # 返回值s满足:chi2.cdf(s, n) = alpha,  s就是alpha分位数

(5)分布的数量关系:

chi2.mean(n)                         # \chi^2(n) 的均值
chi2.var(n)                          # \chi^2(n) 的方差
chi2.std(n)                          # \chi^2(n) 的方差再开平方根
chi2.median(n)                       # \chi^2(n) 的中位数
chi2.moment(a,n)                     # \chi^2(n) 的 a 阶原点矩

3,F分布:

from scipy.stats import f

(1)概率密度函数:

f.pdf(x, m, n)                       # 返回F(m,n)的概率密度函数在x处的值

(2)概率分布函数:

f.cdf(x, m, n)                       # 返回F(m,n)的概率密度函数在0到x上的积分,也就是概率分布函数的值
chi2.sf(x, n)                        # 返回 1 - f.cdf(x, m, n)

(3)数学期望:

f.expect( func = g , args=(m, n) )   # 返回g(x)的数学期望

(4)分位数:

f.isf(1-alpha, m, n)                 # 返回值s满足:chi2.cdf(s, n) = alpha,  s就是alpha分位数
f.ppf(alpha, m, n)                   # 返回值s满足:chi2.cdf(s, n) = alpha,  s就是alpha分位数

(5)分布的数量关系:

f.mean(m, n)                         # F(m,n) 的均值
f.var(m, n)                          # F(m,n) 的方差
f.std(m, n)                          # F(m,n) 的方差再开平方根
f.median(m, n)                       # F(m,n) 的中位数
f.moment(a, m, n)                    # F(m,n) 的 a 阶原点矩
 

4,t分布:

from scipy.stats import t

(1)概率密度函数:

t.pdf(x, n)                         # 返回t(n)的概率密度函数在x处的值

(2)概率分布函数:

t.cdf(x, n)                         # 返回t(n)的概率密度函数在负无穷到x上的积分,也就是概率分布函数的值
t.sf(x, n)                          # 返回 1 - t.cdf(x, n)

(3)数学期望:

t.expect( func = f , args=(n,) )    # 返回f(x)的期望

(4)分位数:

t.isf(1-alpha, n)                   # 返回值s满足:t.cdf(s, n) = alpha,  s就是alpha分位数
t.ppf(alpha, n)                     # 返回值s满足:t.cdf(s, n) = alpha,  s就是alpha分位数

(5)分布的数量关系:

t.mean(n)                           # t(n) 的均值
t.var(n)                            # t(n) 的方差
t.std(n)                            # t(n) 的方差再开平方根
t.median(n)                         # t(n) 的中位数
t.moment(a,n)                       # t(n) 的 a 阶原点矩