当前位置: 首页 > news >正文

利用t.ppft.interval分别计算T分布置信区间[实例]

scipy.stats.t.interval用于计算t分布的置信区间,即给定置信水平时,计算对应的置信区间的下限和上限。

scipy.stats.t.ppf用于计算t分布的百分位点,即给定百分位数(概率)时,该函数返回给定百分位数对应的t分布的值。//它的作用是根据给定的累积概率值,计算随机变量的值,使得该值以下的累积概率等于给定的概率。

 利用t.ppf&t.interval分别计算T分布置信区间[实例]

import scipy.stats as stats
import numpy as np# 指定概率值(例如,95% 置信水平对应的概率)
alpha = 0.05# 指定样本数据
data = np.array([34,56,39,71,84,92,44,67,98,49,55,73,50,62,75,44,88,53,61,25,36,66,77,35])# 计算样本均值和标准误差
sample_mean = np.mean(data)
sample_std = np.std(data, ddof=1)  # 使用ddof=1进行自由度校正
sample_size = len(data)
standard_error = sample_std / np.sqrt(sample_size)# 计算T分布的置信区间的上下限
t_critical = stats.t.ppf(1 - alpha / 2, df=sample_size - 1)  # 自由度为样本大小减一
confidence_interval_lower = sample_mean - t_critical * standard_error
confidence_interval_upper = sample_mean + t_critical * standard_error# 输出T分布置信区间的上下限
print("T分布置信区间的下限:", confidence_interval_lower)
print("T分布置信区间的上限:", confidence_interval_upper)print("-------------------")
# 计算t分布的置信区间
t_confidence_interval = stats.t.interval(1 - alpha, df=sample_size - 1, loc=sample_mean, scale=sample_std / np.sqrt(sample_size))
# 输出计算结果
print("t分布的置信区间:", t_confidence_interval)# T分布置信区间的下限: 51.356996738889045
# T分布置信区间的上限: 68.14300326111095
# -------------------
# t分布的置信区间: (51.356996738889045, 68.14300326111095)
# [Finished in 5.1s]

附录:多种方式进行T分布检验

import numpy as np
import scipy.stats as stats
import matplotlib.pyplot as plt# 创建一个样本数据,假设它符合T分布
np.random.seed(0)
sample_data = np.random.standard_t(df=5, size=100)# 绘制直方图
plt.hist(sample_data, bins=20, density=True, alpha=0.6, color='b', label='Histogram')# 绘制T分布的概率密度函数(PDF)曲线
x = np.linspace(min(sample_data), max(sample_data), 100)
pdf = stats.t.pdf(x, df=5)
plt.plot(x, pdf, 'r-', lw=2, label='T-Distribution PDF')# 添加图例和标签
plt.legend()
plt.title('Histogram and PDF of Sample Data')
plt.xlabel('Value')
plt.ylabel('Probability Density')# 显示图形
plt.show()# 绘制Q-Q图
stats.probplot(sample_data, dist="t", sparams=(5,), plot=plt)
plt.title('Q-Q Plot against T-Distribution')# 显示Q-Q图
plt.show()# 进行正态性检验(Shapiro-Wilk检验)
shapiro_test_statistic, shapiro_p_value = stats.shapiro(sample_data)
print("Shapiro-Wilk检验统计量:", shapiro_test_statistic)
print("Shapiro-Wilk检验p值:", shapiro_p_value)

http://www.lryc.cn/news/181508.html

相关文章:

  • 软件工程第三周
  • 动态链接那些事
  • 力扣:118. 杨辉三角(Python3)
  • QGIS文章二——DEM高程裁剪和3D地形图
  • 【kubernetes】kubernetes中的StatefulSet使用
  • 创建文件夹
  • 点击router-link时候会发生什么?
  • 【Spring】@Bean方法中存在继承如何分析
  • 【Vim 插件管理器】Vim-plug和Vim-vbundle的区别
  • 电子计算机核心发展(继电器-真空管-晶体管)
  • SDI-12协议与STM32 进行uart通信
  • JS中的强制类型转换
  • WebSocket实战之四WSS配置
  • veImageX 演进之路:Web 图片加载提速50%
  • WebSocket实战之五JSR356
  • flask-sqlalchemy结合Blueprint遇到循环引入问题的解决方案
  • 05_对象性能模式
  • 快速选择排序
  • 国庆中秋特辑(六)大学生常见30道宝藏编程面试题
  • Centos7 安装mysql 8.0.34
  • 如何在 Google Earth 中创建轨迹、路线并制作动画
  • 蓝桥杯每日一题2023.9.30
  • springboot和vue:十、vue2和vue3的差异+组件间的传值
  • SQL:增、删、改、查 基本语句 Navicat建库(用法 + 例子)
  • vue-cli搭建过程(HBuilder X搭建)
  • MySQL索引:结构、语法、分类和优化
  • Vue中添加旋转动画
  • 基于SSM农产品商城系统
  • 基于matlab创作简易表白代码
  • pandas