Windows系统Python2/3中安装glmnet遇错,求问可行性及解决方案
Hey there, I’ve dealt with this exact headache on Windows for both Python 2 and 3—so let’s break down why you’re hitting those errors and how to fix them.
Why You’re Seeing These Errors
- The default Conda channels don’t host pre-built glmnet packages for Windows, which is why you get the "packages not found" error.
- Pip fails with error code 1 because glmnet requires a C++ compilation environment to build from source on Windows, and most users don’t have the right tools set up by default.
Proven Fixes to Try
1. Install via Conda-Forge (Recommended)
Conda-Forge maintains pre-built glmnet packages that work on Windows. This is the easiest and most reliable method:
conda install -c conda-forge glmnet
- For Python 2: Conda-Forge still has archived versions of glmnet compatible with Python 2.7, though keep in mind Python 2 is no longer supported upstream—use this only if you absolutely can’t upgrade.
- For Python 3: This should work smoothly for all recent Python 3.x versions (3.6+).
2. Fix Pip Installation by Adding a Compilation Environment
If you prefer using pip, you’ll need to set up the required C++ build tools first:
- Download and install Visual Studio Build Tools (make sure to select the "Desktop development with C++" workload during installation—this includes the compilers and libraries glmnet needs).
- Restart your terminal to ensure the build tools are in your PATH.
- Run the pip install command again:
pip install glmnet
Note: For Python 2.7, you’ll need an older version of Visual Studio (like VS 2008 or VS 2010) since newer compilers aren’t compatible with Python 2’s build system. This is one of the reasons the Conda-Forge method is better for Python 2.
Have Other Users Run Into This?
Absolutely—this is a super common issue for Windows users trying to install glmnet. Most folks end up using the Conda-Forge workaround because it skips the hassle of setting up a compilation environment. You’ll find dozens of similar questions on Stack Overflow with the same root cause and solutions.
内容的提问来源于stack exchange,提问作者Niccola Tartaglia

