请教scipy.stats.theilslopes斜率上下限计算及置信度含义
关于scipy.stats.theilslopes斜率置信区间的解释
1. 斜率置信区间的计算逻辑
scipy的theilslopes函数计算置信区间,核心是基于Kendall秩相关系数的分布特性,大致步骤如下:
- 先算出所有配对点对的斜率(一共n(n-1)/2个,n是样本量),把这些斜率排序得到序列S;
- 根据你设定的置信水平alpha,确定区间对应的位置索引:
- 先计算Kendall tau的方差,再算出对应临界值的秩次k;
- 置信区间的下限就是排序后第k个斜率,上限则是第(n(n-1)/2 - k + 1)个斜率;
- 这里的k值是通过正态近似或者精确分布计算出来的,对应1-alpha置信水平的双侧分位数。
2. 95%置信上限的真实含义
你说的“95%的配对斜率都低于该上限”这个理解不对。正确的意思是:如果重复抽取相同规模的样本,计算出的置信区间有95%的概率能包含真实的总体斜率,它是对总体参数的推断,不是描述样本里的配对斜率分布比例。
举个例子:当样本量比较大时,配对斜率的分布近似对称,95%置信区间会覆盖大部分样本斜率,但并不是严格的95%——因为置信区间的本质是用来估计总体斜率的范围,不是统计样本内斜率的占比。
3. Sen文献的细节补充
你查的Sen 1968年那篇论文,其实在“Confidence Intervals”章节有相关推导:
- 论文里通过Kendall tau和回归斜率的关系,推导出了斜率置信区间的构造方法;
- 核心思路就是利用tau的分布来确定斜率序列的截断点,这也是scipy这个函数的理论基础。如果之前没找到,建议重点看论文第1383到1385页的区间估计部分,里面明确给出了置信区间秩次的计算方式。
内容的提问来源于stack exchange,提问作者selvas
相关产品推荐
相关产品推荐

