You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

安装statsmodels后出现numpy.lib.recfunctions模块缺失错误的解决求助

解决ModuleNotFoundError: No module named 'numpy.lib.recfunctions'的问题

这个问题我之前碰到过,大概率是你的numpy版本不兼容或者安装出现了损坏——毕竟numpy.lib.recfunctions是numpy内置的模块,statsmodels运行时依赖它。结合你Ubuntu+Anaconda+Python3.6的环境,给你几个可行的解决办法:

  • 第一步:先确认当前numpy版本和环境匹配度
    在Spyder控制台或者终端激活你的test环境后,运行以下代码检查numpy版本:

    import numpy
    print(numpy.__version__)
    

    对于Python3.6来说,推荐使用numpy 1.19.x系列版本(这个版本完美兼容Python3.6和statsmodels),如果你的版本过低(比如低于1.11)或者过高,都可能出现模块找不到的问题。

  • 第二步:重新安装兼容的numpy版本
    打开终端,先激活你的conda环境:

    conda activate test
    

    先卸载当前的numpy:

    conda uninstall numpy -y
    

    然后安装指定的兼容版本:

    conda install numpy=1.19.5 -y
    

    安装完成后,再尝试导入statsmodels看看是否解决问题。

  • 第三步:同步statsmodels版本(可选)
    如果重新安装numpy后还是报错,可能是statsmodels版本和numpy不匹配。Python3.6对应的statsmodels最高兼容版本是0.12.2,你可以更新它:

    conda install statsmodels=0.12.2 -y
    
  • 第四步:确认Spyder使用的是正确的conda环境
    有时候Spyder默认使用base环境而非你的test环境,导致模块找不到。你可以在Spyder里手动设置:

    1. 点击顶部菜单栏的 Tools > Preferences
    2. 在弹出窗口中选择 Python interpreter
    3. 勾选 Use the following interpreter,然后找到test环境下的Python路径(一般是/home/mattes/anaconda3/envs/test/bin/python
    4. 重启Spyder后再运行代码

内容的提问来源于stack exchange,提问作者Dennis

火山引擎 最新活动