No project description provided
Project description
prfr
Probabilistic random forest regressor: random forest model that accounts for errors in predictors and labels, yields calibrated probabilistic predictions, and corrects for bias.
For a faster and more elaborate calibration routine, it is highly recommended that you install the package with the extra jax
feature. This requires that you have a JAX installation.
Installation
From PyPI, with jax
feature:
pip install "prfr[jax]"
From PyPI, without jax
feature:
pip install prfr
From Github (latest), with jax
feature:
pip install "prfr[jax] @ git+https://github.com/al-jshen/prfr"
From Github (latest), without jax
feature:
pip install "git+https://github.com/al-jshen/prfr"
Example usage
import numpy as np
import prfr
x_obs = np.random.uniform(0., 10., size=10000).reshape(-1, 1)
x_err = np.random.exponential(1., size=10000).reshape(-1, 1)
y_obs = np.random.normal(x_obs, x_err).reshape(-1, 1) * 2. + 1.
y_err = np.ones_like(y_obs)
train, test, valid = prfr.split_arrays(x_obs, y_obs, x_err, y_err, test_size=0.2, valid_size=0.2)
model = prfr.ProbabilisticRandomForestRegressor(n_estimators=250, n_jobs=-1)
model.fit(train[0], train[1], eX=train[2], eY=train[3])
model.fit_bias(valid[0], valid[1], eX=valid[2])
# check whether the calibration routine will run with JAX
print(prfr.has_jax)
model.calibrate(valid[0], valid[1], eX=valid[2])
pred = model.predict(test[0], eX=test[2])
pred_qtls = np.quantile(pred, [0.16, 0.5, 0.84], axis=-1)
print(pred.shape)
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
prfr-0.2.1.tar.gz
(13.3 kB
view details)
Built Distribution
prfr-0.2.1-py3-none-any.whl
(12.9 kB
view details)
File details
Details for the file prfr-0.2.1.tar.gz
.
File metadata
- Download URL: prfr-0.2.1.tar.gz
- Upload date:
- Size: 13.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.10.4 Darwin/21.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 30496b62b31b8ee7a4db468fb9b1da8d17f6cbdefe7c030689b3785a1fced27d |
|
MD5 | 76d089d32e37c9496b970926197682ec |
|
BLAKE2b-256 | d964833352b4c8887e20a5df48494571e1236c17ce6d9ee7d62aeea19e5aad7e |
File details
Details for the file prfr-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: prfr-0.2.1-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.10.4 Darwin/21.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 497482b2f9e9cba8234e6faafa0b9e44bf23404522c34a5c88c5a57ac3533526 |
|
MD5 | 095a2f3e8daefdb679c2056a14fe34df |
|
BLAKE2b-256 | b2b8231ee5a3e69666f1456b06ef4069e838f4a1a3cce60b4a351d053123d6f9 |