我有一组数据,我最初认为这些数据是正态分布的。然后我真的看了看,发现不是,主要是因为数据有偏差,而且我还做了一个 shapiro-wilks 测试。
我仍然想使用统计方法对其进行分析,因此我想对偏态正态性进行假设检验。
所以我想知道是否有办法测试偏斜正态性,如果可能的话,还有一个库来为我做测试。
我有一组数据,我最初认为这些数据是正态分布的。然后我真的看了看,发现不是,主要是因为数据有偏差,而且我还做了一个 shapiro-wilks 测试。
我仍然想使用统计方法对其进行分析,因此我想对偏态正态性进行假设检验。
所以我想知道是否有办法测试偏斜正态性,如果可能的话,还有一个库来为我做测试。
关于如何将数据拟合到偏正态分布您可以从第一原理计算最大似然估计量。首先注意带有位置参数的偏态正态分布的概率密度函数, 尺度参数和形状参数是
在哪里是标准正态密度函数和是标准的正常 CDF。请注意,这个密度是我对这个问题的回答中描述的类的成员。
基于样本的对数似然来自该分布的独立观察结果是:
事实上,这个 MLE 没有封闭形式的解决方案。但是,它可以用数值求解。例如,在 中R
,您可以将似然函数编码为(注意,我已经使它的紧凑/效率低于可能使其完全透明如何计算上面的似然函数):
set.seed(2345)
# generate standard normal data, which is a special case
n = 100
X = rnorm(n)
# Calculate (negative) log likelihood for minimization
# P[1] is omega, P[2] is xi and P[3] is alpha
L = function(P)
{
# positivity constraint on omega
if( P[1] <= 0 ) return(Inf)
S = 0
for(i in 1:n)
{
S = S - log( dnorm( (X[i] - P[2])/P[1] ) )
S = S - log( pnorm( P[3]*(X[i] - P[2])/P[1] ) )
}
return(S + n*log(P[1]))
}
现在我们只是在数值上最小化这个函数(即最大化可能性)。您可以使用Simplex Algorithm执行此操作,而无需计算导数,这optim()
是R
.
关于如何测试偏度:我们可以通过约束显式测试偏斜正态与正态(因为正态是子模型)并进行似然比检验。
# log likelihood constraining alpha=0.
L2 = function(Q) L(c(Q[1],Q[2],0))
# log likelihood from the constrained model
-optim(c(1,1),L2)$value
[1] -202.8816
# log likelihood from the full model
-optim(c(1,1,1),L)$value
[1] -202.0064
# likelihood ratio test statistic
LRT = 2*(202.8816-202.0064)
# p-value under the null distribution (chi square 1)
1-pchisq(LRT,1)
[1] 0.1858265
所以我们不拒绝原假设(即没有偏斜)。
这里的比较很简单,因为正态分布是一个子模型。在其他更一般的情况下,如果您在所有竞争拟合中使用最大似然估计器,则可以通过比较例如AIC(如此处所做的)将偏正态与其他参考分布进行比较。例如,您可以通过伽马分布和偏斜正态下的最大似然拟合数据,并查看增加的可能性是否证明了偏斜正态的增加复杂性(3 个参数而不是 2 个)。您还可以考虑使用一个样本 Kolmogorov Smirnov 检验将您的数据与偏正态族的最佳拟合估计值进行比较。
我是一名统计学家,在这个行业工作了 30 多年,在阅读这篇文章之前,我从未听说过偏正态分布。如果您有高度偏斜的数据,为什么要特别查看偏斜正态而不是对数正态或伽玛?任何时候你有一个参数族的分布,如伽马、对数正态或偏斜正态,你都可以应用拟合优度检验,如卡方或 Kolmogorov-Smirnov。
所以我最终的解决方案是下载fGarch包, snormFit
并由 fGarch 提供,以获取 Skewed-Normal 参数的 MLE。
然后我使用dsnorm
fGarch 提供的函数将这些参数插入到 Kolmogorov-Smirnov 测试中。
查看http://www.egyankosh.ac.in/bitstream/123456789/25807/1/Unit6.pdf和http://en.wikipedia.org/wiki/Skewness
您可以使用 Karl Pearson 检验偏度。三阶矩与标准差立方的比值称为偏度系数。对称分布的偏度 = 0