Skip to main content

A Python package to build predictive linear and logistic regression models focused on performance and interpretation.

Project description

https://github.com/PythonPredictions/cobra/raw/master/material/logo.png https://img.shields.io/pypi/v/pythonpredictions-cobra.svg https://img.shields.io/pypi/dm/pythonpredictions-cobra.svg https://github.com/PythonPredictions/cobra/actions/workflows/development_CI.yaml/badge.svg?branch=develop

Cobra is a Python package to build predictive models using linear or logistic regression with a focus on performance and interpretation. It consists of several modules for data preprocessing, feature selection and model evaluation. The underlying methodology was developed at Python Predictions in the course of hundreds of business-related prediction challenges. It has been tweaked, tested and optimized over the years based on feedback from clients, our team, and academic researchers.

Main features

  • Prepare a given pandas DataFrame for predictive modelling:

    • partition into train/selection/validation sets

    • create bins from continuous variables

    • regroup categorical variables based on statistical significance

    • replace missing values

    • add columns where categories/bins are replaced with average of target values (linear regression) or with incidence rate (logistic regression)

  • Perform univariate feature selection based on RMSE (linear regression) or AUC (logistic regression)

  • Compute correlation matrix of predictors

  • Find the suitable variables using forward feature selection

  • Evaluate model performance and visualize the results

Getting started

These instructions will get you a copy of the project up and running on your local machine for usage, development and testing purposes.

Requirements

This package requires only the usual Python libraries for data science, being numpy, pandas, scipy, scikit-learn, matplotlib, seaborn, and tqdm. These packages, along with their versions are listed in requirements.txt and can be installed using pip:

pip install -r requirements.txt

Note: if you want to install Cobra with e.g. pip, you don’t have to install all these requirements as these are automatically installed with Cobra itself.

Installation

The easiest way to install Cobra is using pip:

pip install -U pythonpredictions-cobra

Documentation and extra material

  • A blog post on the overall methodology.

  • A research article by Geert Verstraeten (co-founder Python Predictions) discussing the preprocessing approach we use in Cobra.

  • HTML documentation of the individual modules.

  • Step-by-step tutorials for a logistic and a linear regression use case.

  • Check out the Data Science Leuven Meetup talk by one of the core developers (second presentation). His slides and related material are also available.

Contributing to Cobra

We’d love you to contribute to the development of Cobra! There are many ways in which you can contribute, the most common of which is to contribute to the source code or documentation of the project. However, there are many other ways you can contribute (report issues, improve code coverage by adding unit tests, …). We use GitHub issues to track all bugs and feature requests. Feel free to open an issue in case you found a bug or in case you wish to see a new feature added.

For more details, check out our wiki.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pythonpredictions-cobra-1.1.1.tar.gz (39.0 kB view details)

Uploaded Source

Built Distribution

pythonpredictions_cobra-1.1.1-py3-none-any.whl (45.7 kB view details)

Uploaded Python 3

File details

Details for the file pythonpredictions-cobra-1.1.1.tar.gz.

File metadata

File hashes

Hashes for pythonpredictions-cobra-1.1.1.tar.gz
Algorithm Hash digest
SHA256 2a6fc446cdfc56e0ea880f62ae22471d7841fb89471ee442ef73a21834a0f8b3
MD5 699467de4889aacb0bcd3d4cf22961cc
BLAKE2b-256 d28d083e442ef3e508563007f2c5b4d8654c8747e34edb988652f64a8a7fd5a9

See more details on using hashes here.

File details

Details for the file pythonpredictions_cobra-1.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pythonpredictions_cobra-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c36b2b80e22714eebcc9ade04e1d25f65548ca0654bb7f2ece14dfe40f1cdaed
MD5 70885017378965b82bdd939e8b8d2087
BLAKE2b-256 3c31f5fc5e9df6bfeafc8bfd36f820978edd917b5e17109b4cb256f06dbcff3f

See more details on using hashes here.

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