为什么不能直接导入Statsmodels使用?

比如说,我导入了statsmodels包,但是发现没法使用这个包里面的方法:

import statsmodels
print(statsmodels.stats.proportion.proportion_effectsize(prop1=0.3, prop2=0.33))

提示发生错误:

AttributeError: module 'statsmodels' has no attribute 'stats'

原因是stats是statsmodels包下面附属的包(subpackage),而proportion又是stats下面附属的包,如果只导入statsmodels,其附属的包不会被导入。具体参见:https://stackoverflow.com/questions/31864749/why-cant-i-import-statsmodels-directly

因此建议直接从自己想用的附属包里面导入函数。以上面为例,应该这样导入:

from statsmodels.stats.proportion import proportion_effectsize
原文地址:https://www.cnblogs.com/HuZihu/p/12111993.html