楼上回答的对了一半,也错了一半。
枢轴统计量,我通常翻译成基准统计量(pivotal statistic),意思是分布与任何未知参数无关的统计量。
比如,正态总体情况下,有:
以及:
这两个东西的分布都与未知参数无关,所以是基准统计量。
基准统计量有很多好处,首先是性质好,比如bootstrap做检验的时候一定要用基准统计量;还有就是因为基准统计量与未知参数无关,方便我们查表。
有了基准统计量之后,找到基准统计量分布的一个区间,让这个区间的概率是设定的置信水平,变换不等式就可以得到置信区间。
只不过在这里,这个区间的取法可以有很多。
在对称的情况下,比如上面的t分布,方法非常简单,比如我们要算95%的置信区间,左边右边各去2.5%,中间的区间就是95%。
到了不对称的分布,情况就有点微妙了。一般的课本上也都是按照上面的方法,左边右边各去2.5%,中间剩下的是95%,如下图所示:
然而这不是唯一的方法,比如,我们左边去1%,右边去4%可不可以?按照这个方法,中间的区间也是95%啊!
实际上也没有什么不可以,因为置信区间的定义只是要找到一个区间,这个区间包含真值的概率是95%就可以了,没有规定应该如何找这个区间。
那么那么多的区间里面,总有一个最好的吧?
首先应该定义什么是“好”。题主说的没错,置信区间越短越好。
那么怎么构造置信区间最短呢?我们无非是要找一个区间(a,b),使得F(b)-F(a)=0.95,其中F是分布的分布函数。那么,我们的问题可以转化为一个优化问题:
使用拉格朗日:
解出来,我们得到:
因而我们得到结论:如果需要得到最短的置信区间,我们需要让密度函数相等。什么意思呢,就是我们要找这样的置信区间:
之前构造的两边各去2.5%是红色的a'、b',现在构造的最优的置信区间应该是刚好使得密度函数相等,所以两边尾巴的概率很难说是多少了,只能说加起来是5%。
那既然这个是最优的,为啥不用呢?因为难计算啊!
特别是以前没有计算机的时候,都是靠查表来完成找这个区间的,而因为卡方分布有自由度,所以基本上都只给几个1% 2.5% 5% 95% 97.5% 99%之类的几个分位数,上面最优的方法根本查不出来!
比如,下面的代码实现了找一个自由度为5的卡方分布的最小置信区间:
local df=5 di "传统方法下界: " invchi2(`df',0.025) di "传统方法上界: " invchi2(`df',0.975) local error=1e10 forvalues t=1/1000{ local leftp=0.05*`t'/100 local rightp=1-(0.05-`leftp') local ll=invchi2(`df',`leftp') local ul=invchi2(`df',`rightp') local new_error=abs(chi2den(`df',`ul')-chi2den(`df',`ll')) if `new_error' <= `error' { local error=`new_error' } else { continue, break } } di "最优方法下界: `ll'" di "最优方法上界: `ul'" di "置信区间概率:F(b)-F(a)=" chi2(`df',`ul')-chi2(`df',`ll')
结果:
传统方法下界: .83121161 传统方法上界: 12.832502 最优方法下界: .3318872319614707 最优方法上界: 11.23031364026668 置信区间概率:F(b)-F(a)=.95
可以看到,新的置信区间同样保证是95%的置信区间,但是区间长度比之前小了1.1。其实收益没有那么大。
所以最佳的置信区间是存在的,仅仅是因为难算,收益小,还不如两边各去2.5%得了。