Skip to main content

XGBoost Python Package

Project description

PyPI version


  • Windows users: pip installation may not work on some Windows environments, and it may cause unexpected errors.

    Installation from pip on Windows is therefore currently disabled for further investigation; please install from Github instead.

  • If you want to run XGBoost process in parallel using the fork backend for joblib/multiprocessing, you must build XGBoost without support for OpenMP by make no_omp=1. Otherwise, use the forkserver (in Python 3.4) or spawn backend. See the demo.


Since this package contains C++ source code, pip needs a C++ compiler from the system to compile the source code on-the-fly.


On macOS, gcc@5 is required as later versions remove support for OpenMP. See here for more info.

Please install gcc@5 from Homebrew:

brew install gcc@5


Please install gcc:

sudo apt-get install build-essential      # Ubuntu/Debian
sudo yum groupinstall 'Development Tools' # CentOS/RHEL


From PyPI

For a stable version, install using pip:

pip install xgboost

From source

For an up-to-date version, install from Github:

  • Run ./ in the root of the repo.

  • Make sure you have setuptools installed: pip install setuptools

  • Install with cd python-package; python install from the root of the repo

  • For Windows users, please use the Visual Studio project file under the Windows folder. See also the installation tutorial from Kaggle Otto Forum.

  • Add MinGW to the system PATH in Windows if you are using the latest version of xgboost which requires compilation:

    import os
    os.environ['PATH'] = os.environ['PATH'] + ';C:\\Program Files\\mingw-w64\\x86_64-5.3.0-posix-seh-rt_v4-rev0\\mingw64\\bin'


Project details

Release history Release notifications | RSS feed

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page