问题描述
有一组已知的数据,例如为:
1006.1,1014,1001.6,996.4,997.8,981.6,996.4,991.9,993.3,1000.6,987.3,1015.6,981.6,996.2,999.2,994.5,1005.9,1001.9,986.4,1007.6,1001.4,1014.6,1010.2,993.9,1001.4
这组数据是否满足正态分布呢?如果满足的话,在后续的处理过程中,就可以用相应的数学表达式来描述其规律了,即已知散点数据,求其概率分布的问题。
实现方法
[noway]1.首先,用normplot()函数来简单拟合一下。[/noway]
对于上面的例子,首先设:
m=[1006.1,1014,1001.6,996.4,997.8,981.6,996.4,991.9,993.3,1000.6,987.3,1015.6,981.6,996.2,999.2,994.5,1005.9,1001.9,986.4,1007.6,1001.4,1014.6,1010.2,993.9,1001.4]
normplot(m)
看结果,发现散点基本都可以在红色的直线附近,说明这组数据有很大的可能性符合正态分布。
这里需要说明的是,这其实就是一张“正太概率纸”,即横坐标是等间隔的,而纵坐标却为按照标准正态分布给出的点。以上图举例,横坐标为1001.6时(这组已知数据中的任意值),其在红线上对应的点,就恰好为标准正态分布的纵坐标。因此,当实际散点与红线举例跃进,这组数据就越接近于标准正态分布。
如果已知数据符合正态分布规律的话,那散点就会在直线附近,呈线性分布,如果有“拐弯”的情况,就不是正态分布了。
但是呢,绘图法还不足以证明这组数据一定符合正态分布,还需要用另外的函数
[noway]2.用lillietest函数或jbtest函数进行正态分布的拟合优度测试[/noway]
进行假设检验,格式:[H,P,LSTAT,CV] = lillietest(X,alpha)
其中,P为接受假设的概率值,P越接近于0,则可以拒绝是正态分布的原假设;LSTAT为测试统计量的值,CV为是否拒绝原假设的临界值。
对于本例,则为
[H,P,LSTAT,CV] = lillietest(m,0.05)
H =
0
P =
0.5000
LSTAT =
0.1028
CV =
0.1730
h=0说明接受假设,该组数据符合正态分布;p=0.5说明符合正态分布的概率很大;LSTAT小于接受假设的临界值0.173,因此接受假设。
至此,判断结束。
其实,除了正态分布以外,还可以对其他的概率分布类型进行假设检验,以后有空一一列举出来。
暂无评论