当我将statsmodels.api导入为sm并运行sm.nonparametric.smoothers_lowess.lowess
时
发生错误:
模块'statsmodels.nonparametric.api'没有属性'smoothers_lowess'
但是将sms导入statsmodels不会出现此错误。
import statsmodels.api as sm
sm.nonparametric.smoothers_lowess.lowess()
import statsmodels as sm
sm.nonparametric.smoothers_lowess.lowess()
AttributeError:模块'statsmodels.nonparametric.api'没有属性'smoothers_lowess'
答案 0 :(得分:1)
import statsmodels as sm
使您的sm
引用statsmodels
,即statsmodels/__init__.py
。import statsmodels.api as sm
使您的sm
引用statsmodels.api
,即statsmodels/api.py
。由于这些文件是不同的,因此正常情况下应该具有不同的内容。请注意,通过api
模块访问的所有内容都是 public 功能,在各个发行版中受支持且稳定;如果您使用非公开功能,则您的代码可能会在将来的版本中中断。
API之间的基本原理差异记录在https://www.statsmodels.org/dev/importpaths.html