python - 如何在python中找到卡方分布的临界值?
问题描述
我想计算总体标准差的区间估计,为此我需要下限和上限的卡方临界值。计算公式是这样的——
为了计算它,我这样做了 -
# variance
var = halloween['Dollars Spent'].var()
# (n-1) degrees of freedom
deg_fred = (halloween.shape[0] - 1)
lower_bound = np.sqrt((deg_fred*var)/ 27.488)
upper_bound = np.sqrt((deg_fred*var)/ 6.262)
(lower_bound, upper_bound)
(17.37, 36.40)
下限和上限卡方分布的临界值为27.488
和6.262
。我使用卡方分布表找到这些值。我如何在 python 中计算这些值,而不是从一个不会一直为我们提供精确值的表中计算它,如果我想编写一个函数来计算它,它是没有帮助的。
解决方案
使用isf()方法
import scipy as sp
sp.stats.chi2.isf(0.1, 20, loc=0, scale=1) # P=10%, df=20
# donne 28.412... as in books table
推荐阅读
- python - 反转图
- javascript - 调用solidity函数来reactJS
- python - 如何在 django db 中存储多个模型对象
- mysql - 将更新触发器更改为在 MySQL 中插入触发器
- android-management-api - Android Management Api 跨档案联系人管理
- r - ggplot - 使用饼图以百分比形式可视化每组中的项目数 - R
- pandas - Pandas 中查询的奇怪行为
- c# - 如何在 ASP.NET Core Identity 2.0 中手动控制声称要添加到用户的角色
- scala - Scala:如果 Map 是从 GroupBy 创建的,为什么不能更改 Map 中的可变值
- shell - 如何在排序文件上使用 uniq-c