gpt4 book ai didi

python - 大于 2 x 2 列联表的 Fisher 精确检验

转载 作者:太空狗 更新时间:2023-10-29 20:20:06 24 4
gpt4 key购买 nike

您好,scipy stats 具有 Fisher 精确检验的实现,但它仅适用于 2 x 2 列联表。我想在大于 2 x 2 的表上进行测试。 (5x2 ,5x3)我知道 R 中有 fisher.test 可以完成这项工作,但我想在我的 python 代码中完成

有人知道可以在更大的表上工作的 Fisher 精确检验的 python 实现吗?

此外,我不确定是否可以对大于 2 x 2 的表进行 Fisher 精确检验。

谢谢

最佳答案

是的,可以在大于 2x2 的表格上进行 Fisher 精确检验。

目前在 Python 中没有任何干净的、经过广泛测试的解决方案。一种解决方案是使用 rpy2并从 python 调用 R 函数:

import numpy as np
import rpy2.robjects.numpy2ri
from rpy2.robjects.packages import importr
rpy2.robjects.numpy2ri.activate()

stats = importr('stats')
m = np.array([[4,4],[4,5],[10,6]])
res = stats.fisher_test(m)
print 'p-value: {}'.format(res[0][0])
>> p-value: 0.668165917041

另一种解决方案是深入研究 R 实现使用的 C 代码并直接调用该代码。这是某人的 github project 的链接他们回到原来的 fortran 实现并从 python 调用它。

关于python - 大于 2 x 2 列联表的 Fisher 精确检验,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25368284/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com