在使用pandas,numpy等安装新的Python 3.6环境后,当我尝试使用以下pandas方法时,出现以下错误:
>>> df.to_excel(filename)
ModuleNotFoundError: No module named 'openpyxl'
当我使用pd.read_excel
方法时,发生了类似的问题。
在这两种情况下,都可以通过在openpyxl
上安装xlrd
/ conda install
来解决问题,但是我想知道这是否是故意的,为什么不考虑使用openpyxl / xlrd从一开始就安装了熊猫的依赖项。
答案 0 :(得分:2)
是的,这是故意的。如果您阅读the Optional Dependencies section of the Pandas documentation,则可以看到其中包含Excel I / O。
对于这为什么是一件好事,我可以考虑几个论点:
但是,我确实认为这里的错误处理可以改善。例如,最好提供一条消息,说没有一个软件包就无法使用此功能,而不是硬ModuleNotFoundError
。
答案 1 :(得分:0)
仅供参考,就我而言,Conda安装并没有解决缺少的依赖包的问题,而是pip install ... pip install xlrd
解决了这个问题。