Regression workflows package based on Least Squares Regression and Quantile Regression.
Project description
Regressionizer
Python package with a class that allows pipeline-like specification and execution of regression workflows.
Extensive guide is given in the Jupyter notebook "Rapid-specification-of-regression-workflows.ipynb" and the corresponding Markdown document "Rapid-specification-of-regression-workflows.md".
Features summary
-
The class
Regressionizerfacilitates rapid specifications of regressions workflows.- To quickly specify:
- data rescaling and summary
- regression computations
- outliers finding
- conditional Cumulative Distribution Functions (CDFs) reconstruction
- plotting of data, fits, residual errors, outliers, CDFs
- To quickly specify:
-
Regressionizerworks with data frames, numpy arrays, lists of numbers, and lists of numeric pairs.
Details and arguments
-
The curves computed with Quantile Regression are called regression quantiles.
-
Regressionizerhas three regression methods:quantile_regressionquantile_regression_fitleast_squares_fit
-
The regression quantiles computed with the methods
quantile_regressionandquantile_regression_fitcorrespond to probabilities specified with the argumentprobs. -
The method
quantile_regressioncomputes fits using a B-spline functions basis.- The basis is specified with the arguments
knotsandorder. orderis 3 by default.
- The basis is specified with the arguments
-
The methods
quantile_regession_fitandleast_squares_fituse lists of basis functions to fit with specified with the argumentfuncs.
Workflows flowchart
The following flowchart summarizes the workflows that are supported by Regressionizer:
Usage examples
Import libraries:
from Regressionizer import *
import numpy as np
Generate random data:
np.random.seed(0)
x = np.linspace(0, 2, 300)
y = np.sin(2 * np.pi * x) + np.random.normal(0, 0.4, x.shape)
data = np.column_stack((x, y)
Compute quantile regression for probabilities [0.2, 0.5, 0.8] and make the corresponding plot:
obj = (Regressionizer(data)
.quantile_regression(knots=8, probs=[0.2, 0.5, 0.8])
.plot(title="B-splines fit", template="plotly")
)
Show the plot obtained above:
obj.take_value().show()
References
Articles, books
[RK1] Roger Koenker, Quantile Regression, Cambridge University Press, 2005.
[RK2] Roger Koenker, "Quantile Regression in R: a vignette", (2006), CRAN.
[AA1] Anton Antonov, "A monad for Quantile Regression workflows", (2018), MathematicaForPrediction at GitHub.
Packages, paclets
[RKp1] Roger Koenker,
quantreg,
CRAN.
[AAp1] Anton Antonov, Quantile Regression WL paclet, (2014-2023), GitHub/antononcube.
[AAp2] Anton Antonov, Monadic Quantile Regression WL paclet, (2018-2024), GitHub/antononcube.
[AAp3] Anton Antonov,
QuantileRegression,
(2019),
Wolfram Function Repository.
Repositories
[AAr1] Anton Antonov, DSL::English::QuantileRegressionWorkflows in Raku, (2020), GitHub/antononcube.
Videos
[AAv1] Anton Antonov, "Boston useR! QuantileRegression Workflows 2019-04-18", (2019), Anton Antonov at YouTube.
[AAv2] Anton Antonov, "useR! 2020: How to simplify Machine Learning workflows specifications", (2020), R Consortium at YouTube.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file regressionizer-0.1.9.tar.gz.
File metadata
- Download URL: regressionizer-0.1.9.tar.gz
- Upload date:
- Size: 24.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
75009e04708f22bbd738ac1e3b32ad1bdc900a8fac1a6017b9f7a30dc38dd41d
|
|
| MD5 |
6a29437abdfac9a71064102aca458502
|
|
| BLAKE2b-256 |
ea3d8062cee8b68346a964224e8338283fca81930cb9a7ea3121a47a65490b7c
|
File details
Details for the file Regressionizer-0.1.9-py3-none-any.whl.
File metadata
- Download URL: Regressionizer-0.1.9-py3-none-any.whl
- Upload date:
- Size: 22.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed487784ce58b783e21ff91bb92c74555c20a4bc14a577e70fdf2352dd876737
|
|
| MD5 |
1ec9132644c05bf3def918541e6b7e02
|
|
| BLAKE2b-256 |
852903dcdf644298616c61ace4fb28961125c2ab422d6e4c285876b93142744b
|