python 置信区间

置信区间是指由 样本统计量 所构造的总体参数的估计区间。

这句话也就是说 ( 这里统计量一般指均值 ) 利用样本均值来估计总体均值的可靠程度, 这个"可靠程度"用"置信区间"来表示, 置信区间(是一个系数)取值范围为: 0

当样本量越大, 则越可靠.

置信区间计算公式:

ci = mean±stdN(ppf)( (1-α)/2 )

公式参数说明:

ci: 表示置信区间

mean: 表示样本均值

std: 表示样本标准差

N(ppf): 表示正态分布的百分点函数

α : 是显著性水平

α的取值跟样本量有关

其中,百分点函数ppf是累积分布函数cdf的反函数

常用的几个置信区间的计算可以不用上述公式,而使用更简单的公式

置信水平是指特定个体对待特定命题真实性相信的程度

通常使用 90%,95% 和 99% 作为置信区间的置信水平。这三个置信水平的临界值分别为 1.64,1.98 和 2.32。

se是样本标准误, n是样本个数

se = mean/pow(n,0.5)

置信区间算法:

ci = mean-se1.64 置信水平为0.9

ci = mean-se1.98 置信水平为0.95

ci = mean-se*2.32 置信水平为0.99

举例来说,如果在一次大选中某人的支持率为55%,而置信水平(也称为可信区间)0.95以上的置信区间是(50%,60%),那么他的真实支持率有百分之九十五的机率落在百分之五十和百分之六十之间,因此他的真实支持率不足一半的可能性小于百分之2.5。 如例子中一样,置信水平一般用百分比表示,因此置信水平0.95上的置信空间也可以表达为:95%置信区间。置信区间的两端被称为置信极限。对一个给定情形的估计来说,显著性水平越高,所对应的置信区间就会越大。

但是; 重点来了, 在python里可以直接调用函数求出置信区间

置信水平 = 可信区间 = 可信度 ;他们是同一个说法(其中可信度是为了方便理解,在案例中我用于替代置信水平的)

置信区间宽度 = 置信区间上极限 - 置信区间下极限

结论是:置信区间宽度越小,预测模型越精确;但是置信区间宽度小了,可信度也就越小了

""" 置信区间 """

df = len(data) - 1

alpha= # 是设定的可信区间, 可以理解为可信度; 数值是百分数,取值范围(0,1)

ci = stats.t.interval(alpha, df, loc=np.mean(data), scale=stats.sem(data)) # ci是置信区间

案例: 对给出的样本数据分析(所用文件是csv格式的,无法导入)

import os

import pandas as pd

import matplotlib

import matplotlib.pyplot as plt

from scipy import stats

import numpy as np

os.chdir(r"D:\python金融")

data = pd.read_csv("house_price_gr.csv",encoding='gbk') # 文件有中文,encoding= 'gbk'

matplotlib.rcParams['axes.unicode_minus']=False#解决保存图像时负号'-'显示为方块的问题

plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体

# print(data.shape[0]) # 查看样本数量

# 绘制直方图 plt.hist(样本数据,bins=柱子个数) ; 默认x轴是样本数值, y轴是样本数值的个数

# plt.hist(data.rate,bins=40)

# plt.show()

# 查看均值,标准差,百分位数等

print(data.rate.describe())

alpha = 0.99

alpha_list = [] # 可信度列表

ci_width_list = [] # 置信区间宽度列表

ci_upper_limit = [] # 置信区间上极限

ci_lower_limit = [] # 置信区间下极限

for i in range(20):

print("alpha={}".format(alpha))

# 均值的99%可信区间的置信区间

""" 置信区间 """

df = len(data.rate) - 1

ci = stats.t.interval(alpha, df, loc=np.mean(data.rate), scale=stats.sem(data.rate))

# ci = stats.t.interval(alpha=0.99,df=len(data.rate)-1,loc=np.mean(data.rate),scale=stats.sem(data.rate))

# 算出置信区间的宽度

ci_element = ci

ci_lower_limit.append(ci_element[0])

ci_upper_limit.append(ci_element[1])

# ci_element.append(ci)

ci_width = ci_element[1] - ci_element[0] # 定义置信区间宽度

ci_width_list.append(ci_width)

print(ci_width) # 输出置信区间宽度

alpha_list.append(alpha) # 添加到列表中

alpha = alpha - 0.05

print("置信区间={}".format(ci))

print(" "*100)

print(ci_width_list)

print(alpha_list)

x=alpha_list # 设置可信度为x轴

# y=ci_width_list

plt.plot(x,ci_lower_limit,linestyle="dashdot",label="置信区间下极限")

plt.plot(x,ci_width_list,linestyle="dashdot",label = "置信区间宽度")

plt.plot(x,ci_upper_limit,linestyle="dashdot",label= "置信区间上极限")

plt.xlabel("可信度/百分数") # 可信度指的是可信区间, 为了方面理解,用可信度代替可信区间

plt.ylabel("置信区间/单位为变量的单位")

plt.title("可信度--置信区间宽度 图")

plt.legend() # 显示标签

"""

可信度与置信区间图说明:

例如:可信度=0.90,置信区间宽度=0.05, 置信区间上限=0.07,置信区间下限=0.02

则说明:发生在区间(0.02,0.07)这个范围内的可能性为0.90

通过图像得出: 置信区间宽度越越小,预测模型越精确;但是置信区间宽度小了,可信度也就越小了

"""

plt.show()

通过图可以得出上述结论:

:置信区间宽度越小,预测模型越精确;但是置信区间宽度小了,可信度也就越小了

所有为了得到较高的可信度, 就必须得扩大置信区间宽度; 一般取可信度=0.95来计算

原文:https://blog.csdn.net/with_still_water/article/details/102511633

python计算方差的置信区间_python计算置信区间相关推荐

  1. python 散点图 置信区间_python计算置信区间

    python 置信区间 置信区间是指由 样本统计量 所构造的总体参数的估计区间. 这句话也就是说 ( 这里统计量一般指均值 ) 利用样本均值来估计总体均值的可靠程度, 这个"可靠程度&quo ...

  2. python方差的计算公式_python计算均值方差

    原博文 2014-06-07 14:13 − 用Python求均值与方差,可以自己写,也可以借助于numpy,不过到底哪个快一点呢? 我做了个实验,首先生成9百万个样本: ```python nlis ...

  3. python计算和差积商_Python计算股票投资组合的风险价值(VaR)

    原文链接:http://tecdat.cn/?p=17758​tecdat.cn 什么是风险价值(VaR)? 风险价值(VaR)用于尝试量化指定时间范围内公司或投资组合中的财务风险水平.VaR提供了一 ...

  4. python方差的计算公式_Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算...

    使用numpy可以做很多事情,在这篇文章中简单介绍一下如何使用numpy进行方差/标准方差/样本标准方差/协方差的计算. variance: 方差 方差(Variance)是概率论中最基础的概念之一, ...

  5. python文件关键行数_Python计算大文件行数方法及性能比较

    如何使用Python快速高效地统计出大文件的总行数, 下面是一些实现方法和性能的比较. 1.readline读所有行 使用readlines方法读取所有行: def readline_count(fi ...

  6. python遍历txt每一行_python – 计算(和写入)文本文件中每一行的...

    第一次在堆栈中发布 – 总是发现以前的问题足以解决我的问题!我遇到的主要问题是逻辑--即使是伪代码答案也会很棒. 我正在使用python从文本文件的每一行读取数据,格式如下: This is a tw ...

  7. python简单小案例列表_python计算列表内各元素的个数实例

    python计算列表内各元素的个数实例 如下所示: list = [1,2,3,4,5,6,7,5,4,3,2,12] set = set(list) dict = {} for item in se ...

  8. python计算长方形面积代码_Python计算两个矩形重合面积代码实例

    这篇文章主要介绍了Python 实现两个矩形重合面积代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 计算两个矩形的重合面积 imp ...

  9. python小数点后任意位_Python计算开方、立方、圆周率,精确到小数点后任意位的方法...

    Python计算的位数 在电脑上做了一个实验,看看python能计算到多少位,一下是结果. x = math.sqrt((3)) print ("%.53f"%(x)) print ...

  10. python调用函数来判断质数_Python计算-质数的判断

    python 如何判断一个数是不是质数 让这个数除,从2开始到她的一半,如果余数没有0就是质数.大兄弟,这是非常基本的算法,你都拿到网上问. 欢迎来到夜影驱动编程的. import math def ...

最新文章

  1. ubuntu 交叉编译 armv7_32 ffmpeg x264(已完成)
  2. java 后端 验证码逻辑_Java后端产生验证码后台验证功能的实现代码
  3. vue使用@路径引入
  4. python tts 保存_Python 文件和目录操作学习
  5. 转:SQL的内连接与外连接
  6. 会vue再上手uni-app难度大吗?
  7. 泛型的应用-vue3之ref
  8. ubuntu下锐捷客户端提示多个ip地址
  9. GZH逸佳君:照片杂色太可怕,谁丑谁尴尬:送你超实用PS降噪插件,1秒变高清
  10. APP案例分析--扇贝单词
  11. 计算机硬件具体都包含哪些,电脑硬件包括哪些
  12. 流行的ORM框架简介
  13. Bootstrap 的基本使用方法
  14. 【Shiro权限管理】10.Shiro为密码加盐
  15. C. Madoka and Childish Pranks #777 div2
  16. NSA/SA手机都是真5G 用户已购5G手机不受明年政策影响
  17. 长沙高中计算机学校排名2015,长沙市所有高中学校排名,2021年长沙市重点高中分数线排名榜...
  18. 越南籍学生如何进行计算机教学,浅谈计算机教学中越南文输入法的注意事项
  19. Mybatis-plus深入开发(详解${ew.sqlSegment} 与 ${ew.customSqlSegment})
  20. 线性代数-行列式知识总结

热门文章

  1. pickle.load及pickle.dump
  2. TCP/IP路由技术第一卷动态路由知识回顾
  3. 前端开发:Promise的使用丨蓄力计划
  4. hexo-theme-icarus配置 valine 评论系统
  5. 冲击港交所:百果园书写水果连锁运营默示录
  6. Ubuntu服务器入门指南
  7. CTGU 2021春-MySQL数据库实验2:基本查询5-6关,共5小题全代码+信息表+通关截图!
  8. 气质如兰nbsp;一代才女林徽因
  9. Java模拟醉汉行走问题_醉汉随机行走问题的统计学模型.pdf
  10. 2017CS231n李飞飞深度视觉识别笔记(二)——图像分类