Python 3.6 32位环境下安装statsmodels报错求助
解决statsmodels安装失败的两个问题
Hey Mike, I’ve run into similar headaches with older Python versions and VS compilers before—let’s break this down step by step:
关于第一个疑问:明明装了numpy却提示找不到模块
这个错误通常和numpy版本兼容性、32位环境适配,或是distutils组件损坏有关:
- 首先,Python 3.6属于较老版本,得确保你装的numpy是适配32位Python 3.6的兼容版本。可以先卸载现有numpy,再重新安装对应版本:
(1.19.5是最后支持Python 3.6的numpy版本,pip uninstall numpy -y pip install numpy==1.19.5 --only-binary :all:--only-binary会拉取预编译的轮子,避免编译环节出问题) - 其次,检查是否有多个Python版本共存导致路径混乱。打开命令行输入
where python,确认当前调用的是你安装的32位Python 3.6路径,没有被其他版本覆盖。 - 如果还是不行,尝试修复numpy的distutils组件:删除Python安装目录下
Lib\site-packages\numpy\distutils文件夹,然后重新安装numpy。
关于第二个疑问:找不到VC下的PlatformSDK\lib路径
VS2015默认可能没安装完整的Windows Platform SDK,或是路径结构和statsmodels的预期不匹配:
- 最省心的方法是跳过编译,直接安装预编译的statsmodels轮子。针对Python 3.6的32位版本,你可以找到对应版本的
.whl文件,然后用pip安装:pip install path\to\statsmodels-xxx-cp36-none-win32.whl - 如果一定要编译安装,需要安装兼容VS2015的Windows SDK(比如Windows 10 SDK 10.0.10240.0版本),安装时勾选“Windows Desktop SDK”组件。安装完成后,手动设置环境变量
LIB,添加SDK的lib路径(比如C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\um\x86)。 - 另外,你也可以手动创建
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\PlatformSDK\lib路径,然后把Windows SDK里的lib文件复制过去,但这个方法比较繁琐,不如直接用预编译轮子高效。
最后建议优先尝试预编译轮子的方案,老版本Python编译第三方库很容易踩环境依赖的坑。
内容的提问来源于stack exchange,提问作者Mike




