在 Python 中执行 Dunnett 多重比较测试

CBI*_*BID 5 python statistics scipy

我已经确定,对我的数据进行单向方差分析后最适用的事后统计分析是 Dunnett 检验。我过去使用 R 执行过此操作,但由于我用来自动化工作流程(自动分析大数据量)的软件包,我现在仅限于 python。

我发现了几个提供多种不同事后测试的软件包(例如 sci-kit、tukeyHSD),但是它们都不包含 Dunnett 的。例如,我可以轻松地在 scipy 中执行单向方差分析:

import scipy.stats as stats

# Made up data
a = [10, 12, 10, 14, 18] # Control
b = [15, 14, 18, 10, 38]
c = [20, 22, 23, 34, 20]
d = [50, 48, 42, 51, 51]

stats.f_oneway(a, b, c, d)

> F_onewayResult(statistic=26.92639734366354, pvalue=1.7207487532445122e-06)
Run Code Online (Sandbox Code Playgroud)

然而,我想要在与具有正态分布数据(n~1000)的单个对照组进行比较之后进行多重比较分析。我知道 Rpy2,但是我希望在不使用 docker 的情况下在计算机上执行此操作。对功能包有什么建议吗?

(我也是一名生物学家,拥有相当基本的脚本知识,因此我很可能在这里遗漏了一些基本知识)

Y0d*_*0da 3

我们刚刚将其引入 SciPy。它将在 SciPy 1.11 中提供:scipy.stats.dunnett

您可以在此处查看开发文档:https://scipy.github.io/devdocs/reference/ generated/scipy.stats.dunnett.html

欢迎任何反馈。(当我写这篇文章时,我们正在添加 CI 和更好的 str 方法。)