Python 将statsmodels.api作为sm导入和将statsmodels作为sm导入之间有什么区别?
当我将statsmodels.api作为sm导入并运行Python 将statsmodels.api作为sm导入和将statsmodels作为sm导入之间有什么区别?,python,Python,当我将statsmodels.api作为sm导入并运行sm.nonparametric.smoothers\u lowess.lowess 发生错误: 模块“statsmodels.nonparametric.api”没有属性“smoothers\u lowess” 但是导入statsmodels作为sm没有这个错误 将statsmodels.api导入为sm sm.非参数.平滑器_lowess.lowess() 将statsmodels导入为sm sm.非参数.平滑器_lowess.lowe
sm.nonparametric.smoothers\u lowess.lowess
发生错误:
模块“statsmodels.nonparametric.api”没有属性“smoothers\u lowess”
但是导入statsmodels作为sm没有这个错误
将statsmodels.api导入为sm
sm.非参数.平滑器_lowess.lowess()
将statsmodels导入为sm
sm.非参数.平滑器_lowess.lowess()
AttributeError:模块“statsmodels.nonparametric.api”没有属性“smoothers\u lowess”
使您的import statsmodels as sm
引用--sm
使您的import statsmodels.api as sm
引用--也就是说,sm
statsmodels/api.py
api
模块访问的所有内容都是公共功能,在各个版本中都得到支持和稳定;如果您使用非公开功能,您的代码可能会在将来的版本中中断
api之间的基本原理差异记录在
statsmodels中。api
和statsmodels
是两个不同的模块,来自两个不同的文件;它们可能有不同的内容。导入sm应该使用的statsmodels:sm.api.nonparametric.smoothers_lowess.lowess()THX!和statsmodels.api,以比statsmodels更快的速度导入模块?感谢您的耐心等待!这对我帮助很大!来自模块的导入(不带前导下划线)也是公共的。主要区别在于在api
中一次导入大多数statsmodels,而不是只导入一些特定功能和支持代码。例如,statsmodels.regression.linear_model import OLS的是公开的,如果您只需要OLS,特别是在图书馆使用中,建议您使用它。@Josef,就这个答案被标记为社区wiki而言,我不主张它的任何个人所有权,也不从它的投票中获得任何代表;请鼓励编辑以确保准确性/完整性。