Q-Q图是正态分位数图,纵坐标是变量的取值,关键是横坐标,横坐标的做法:
首先把变量按从小到大的顺序排列,计算变量的长度,即总共有多少个取值,再按顺序计算变量的所有取值的累积百分比,所谓的累积百分比,也就是可以看成是累积概率, 比如有10个值,按照从小到大的顺序,第一个值的排序是1, 那么他的所占的百分比就是10%, 紧接着后一个值所占的百分比也会死10%, 但是累积概率值为20%, 依次往后计算, 因为最后一个值的累积百分比是100%,即等于1,这个值如果计算它的正态分布概率的分位数的话,是无限大的,因此需要对这个值进行修正一下,就是因为这一个值无限大,所以对全体计算出来的累积百分比减去一个适当小的数,修正后的累积百分比与原百分比相差不多,但是回避了最后一个值是1而无法计算的问题。
qqplot有两种用法:
第一种是检验两个序列是否来自同一个分布,这个应该没什么问题就是plot(X,Y)
第二种是检验一个序列是否来自某种分布F(x),这时候用到qqplot(X,PD),在matlab的help中写的很清楚
qqplot(X,PD)makes an empirical quantile-quantile plot of the quantiles of the data in the vector X versus the quantiles of the distribution specified by PD, a ProbDist object of the ProDistUnivParam class and or ProbDistUnivKernel class
其中,DistName就是分布类型,可以填写以下这些类型:
- 'beta'
- 'binomial'
- 'birnbaumsaunders'
- 'exponential'
- 'extreme value' or 'ev'
- 'gamma'
- 'generalized extreme value' or 'gev'
- 'generalized pareto' or 'gp'
- 'inversegaussian'
- 'logistic'
- 'loglogistic'
- 'lognormal'
- 'nakagami'
- 'negative binomial' or 'nbin'
- 'normal'
- 'poisson'
- 'rayleigh'
- 'rician'
- 'tlocationscale'
- 'weibull' or 'wbl'
下面给出一个具体的例子:已知序列X,做出GEV参数估计后,画出Q-Q图:
- % GEV模型参数估计
- [parmhat]=gevfit(X);
- % qqplot
- PD=ProbDistUnivParam('gev',parmhat);
- figure
- qqplot(X,PD);


雷达卡



京公网安备 11010802022788号







