这不是一个理论问题,只是一个效率问题.假设我有一个卡方随机变量列表(长列表),我想 for each 变量计算一个p值.为了方便起见,让我们假设它们都有相同的自由度.类似于:

Chi Square [44,2.3, 33.4,........] -> p_value [.11,.95,.65,..........]

有没有NumPy功能或在线计算器可以做到这一点?在自动取款机上做单项取款机让我失go 了理智.

干杯

推荐答案

您可以使用函数scipy.special.chdtrc(卡方累积分布函数的补码)或scipy.stats.chi2sf(生存函数)方法(最终调用scipy.special.chdtrc).

例如,

In [63]: import numpy as np

In [64]: from scipy.special import chdtrc

In [65]: chi2vals = np.array([12, 5, 1.95, 4.2, 21.0])

In [66]: df = 9  # degrees of freedom

In [67]: chdtrc(df, chi2vals)  # p values
Out[67]: array([0.21330931, 0.83430826, 0.99223381, 0.8977626 , 0.01265042])

In [68]: from scipy.stats import chi2

In [69]: chi2.sf(chi2vals, df)  # p values
Out[69]: array([0.21330931, 0.83430826, 0.99223381, 0.8977626 , 0.01265042])

Python相关问答推荐

使用matplotlib pcolormesh,如何停止从一行绘制的磁贴连接到上下行?

Pandas :多索引组

Class_weight参数不影响RandomForestClassifier不平衡数据集中的结果

Pytest两个具有无限循环和await命令的Deliverc函数

运行总计基于多列pandas的分组和总和

NP.round解算数据后NP.unique

如何调整QscrollArea以正确显示内部正在变化的Qgridlayout?

基于索引值的Pandas DataFrame条件填充

我对我应该做什么以及我如何做感到困惑'

改进大型数据集的框架性能

Pandas:填充行并删除重复项,但保留不同的值

pandas fill和bfill基于另一列中的条件

递归函数修饰器

在极点中读取、扫描和接收有什么不同?

我什么时候应该使用帆布和标签?

多个矩阵的张量积

Python如何导入类的实例

如何获取包含`try`外部堆栈的`__traceback__`属性的异常

如何在Python中从html页面中提取html链接?

从列表中分离数据的最佳方式