Statsmodels似乎是python的唯一库(除rpy2
之外)提供FDR-based BH adjustment for p-values,但它似乎不再包括在内:
statsmodels.sandbox.stats.multicomp.fdrcorrection0()
AttributeError: module 'statsmodels.sandbox' has no attribute 'stats'
此模块是否已从0.6.1中删除? Besides using rpy2,还有其他广泛使用的FDR p值调整实现吗?
答案 0 :(得分:2)
相关代码已移出沙箱,现在位于statsmodels.stats.multitest
沙箱功能只是非沙箱功能的别名。在线文档目前有点过时了。
直接导入
>>> from statsmodels.stats.multitest import fdrcorrection
>>> fdrcorrection
<function fdrcorrection at 0x0000000008554B70>
通过api
使用它>>> import statsmodels.api as sm
>>> sm.stats.fdrcorrection
<function fdrcorrection at 0x0000000008554B70>
这是旧位置,目前仍包含别名
>>> from statsmodels.sandbox.stats.multicomp import fdrcorrection0
>>> fdrcorrection0
<function fdrcorrection at 0x0000000008554B70>
statsmodels.stats.multitest
中编辑的功能列表:
>>> import statsmodels.stats.multitest as multi
>>> dir(multi) # output edited
['NullDistribution', 'fdrcorrection', 'fdrcorrection_twostage', 'local_fdr', 'multipletests']
答案 1 :(得分:1)
它仍然存在于0.8.0版本中:
import statsmodels
print(statsmodels.__version__)
# 0.8.0rc1
from statsmodels.sandbox.stats.multicomp import fdrcorrection0
print(fdrcorrection0)
# <function fdrcorrection at 0x0E5A3E88>
您可能没有导入子模块stats
和multipcomp
。