python,找到中位数周围的置信区间

Posted

技术标签:

【中文标题】python,找到中位数周围的置信区间【英文标题】:python, find confidence interval around median 【发布时间】:2017-04-27 09:32:26 【问题描述】:

如何在 python 中找到我的数据的中位数周围的置信区间?

假设我有数组

a = np.array([24, 38, 61, 22, 16, 57, 31, 29, 35])

我想在中位数附近找到 80% 的置信区间。我如何在python中做到这一点?

【问题讨论】:

您可以使用引导程序:***.com/a/66008548/10375049 【参考方案1】:

我实现this procedure 来计算中位数周围的置信区间。

例如,设置cutoff=0.8。 这需要python > 3pandas > 1。 它假定您将数组作为pd.Series 传递。

import statistics, math
import pandas as pd 

def median_confidence_interval(dx,cutoff=.95):
    ''' cutoff is the significance level as a decimal between 0 and 1'''
    dx = dx.sort_values(ascending=True, ignore_index=True)
    factor = statistics.NormalDist().inv_cdf((1+cutoff)/2)
    factor *= math.sqrt(len(df)) # avoid doing computation twice

    lix = round(0.5*(len(dx)-factor))
    uix = round(0.5*(1+len(dx)+factor))

    return (dx[lix],dx[uix])

a = np.array([24, 38, 61, 22, 16, 57, 31, 29, 35])
print(median_confidence_interval(df,cutoff=0.8))
# (29,57)

【讨论】:

以上是关于python,找到中位数周围的置信区间的主要内容,如果未能解决你的问题,请参考以下文章

r语言怎么计算回归模型的置信区间

R语言编写自定义函数计算R方使用自助法Bootstrapping估计多元回归模型的R方的置信区间可视化获得的boot对象估计单个统计量的置信区间分别使用分位数法和BCa法

AMOS计算Bootstrap,怎么看平均间接效应和置信区间

使用R survival package计算中位生存时间的proc lifetest 95%CI

“万能钥匙”Bootstrap方法介绍2

小提琴图