正态分布与偏态分布的概念
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正态分布与偏态分布的概念相关的知识,希望对你有一定的参考价值。
正态分布又称高斯分布,是一种最重要的连续型分布。它是以均数为中心呈对称的钟型分布。早在1733年a.de
moivre首先提出这种分布的方程,他以此作为二项分布的极限形式。至19世纪初期,德国数学家c.
f.
gauss与法国数学家p.s.de
laplace分别加以发展,用于研究观察误差的分布,但他们过分强调一切自然现象均服从正态分布。经半世纪之后k.pearson论证,正态分布只是自然现象分布的一种形式。然而正态分布仍不失其重要意义。在医学科研中应用很广,也是许多统计方法建立的基础。
偏态分布:偏离对称的变量值的频数分布。呈偏态分布的资料,有些可通过变量代换变为正态。 参考技术A 正态分布:概率论中最重要的一种分布,也是自然界最常见的一种分布。该分布由两个参数——平均值和方差决定。概率密度函数曲线以均值为对称中线,方差越小,分布越集中在均值附近。
偏态分布:与正态分布相对而言。
它有两个特点:
一是左右不对称(即所谓偏态);
二是当样本增大时,其均数趋向正态分布。
偏态分布又可分为正偏态分布和负偏态分布两种类型:
具体参照百度百科,学学使用搜索引擎啊本回答被提问者采纳
scipy中的偏斜正态分布
【中文标题】scipy中的偏斜正态分布【英文标题】:skew normal distribution in scipy 【发布时间】:2011-08-18 14:12:05 【问题描述】:有谁知道如何用 scipy 绘制偏态正态分布? 我认为可以使用 stats.norm 类,但我不知道如何使用。 此外,如何估计描述一维数据集偏态正态分布的参数?
【问题讨论】:
【参考方案1】:来自***description,
from scipy import linspace
from scipy import pi,sqrt,exp
from scipy.special import erf
from pylab import plot,show
def pdf(x):
return 1/sqrt(2*pi) * exp(-x**2/2)
def cdf(x):
return (1 + erf(x/sqrt(2))) / 2
def skew(x,e=0,w=1,a=0):
t = (x-e) / w
return 2 / w * pdf(t) * cdf(a*t)
# You can of course use the scipy.stats.norm versions
# return 2 * norm.pdf(t) * norm.cdf(a*t)
n = 2**10
e = 1.0 # location
w = 2.0 # scale
x = linspace(-10,10,n)
for a in range(-3,4):
p = skew(x,e,w,a)
plot(x,p)
show()
如果您想从数据集中查找比例、位置和形状参数,请使用scipy.optimize.leastsq
,例如使用e=1.0
、w=2.0
和a=1.0
,
fzz = skew(x,e,w,a) + norm.rvs(0,0.04,size=n) # fuzzy data
def optm(l,x):
return skew(x,l[0],l[1],l[2]) - fzz
print leastsq(optm,[0.5,0.5,0.5],(x,))
应该给你类似的东西,
(array([ 1.05206154, 1.96929465, 0.94590444]), 1)
【讨论】:
【参考方案2】:接受的答案或多或少已经过时了,因为 skewnorm
函数现在在 scipy 中实现。所以代码可以写得更短:
from scipy.stats import skewnorm
import numpy as np
from matplotlib import pyplot as plt
X = np.linspace(min(your_data), max(your_data))
plt.plot(X, skewnorm.pdf(X, *skewnorm.fit(your_data)))
【讨论】:
需要一个额外的 ) 在 plt.plot 行的末尾。虽然太短,无法接受编辑 @BlueTurtle 谢谢,我加了。以上是关于正态分布与偏态分布的概念的主要内容,如果未能解决你的问题,请参考以下文章