A utility for Bayesian trend regression with a variety of statistical models
Project description
ClimTrends
ClimTrends
is a python package aimed at making it easy to calculate linear
trends in a variety of statistical models. The current implementation
includes:
- Normal Distribution - trend in mean
- Poisson Distribution - trend in mean
- Exponential Distribution - trend in mean
- Gamma Distribution - trend in mean and standard deviation
- GEV Distribution - trend in mean
The module utilizes datetime
-like objects as the input time value, which
makes it easy to interoperate with data from
netCDF4 and
xarray. All models use a Bayesian
framework (using the emcee package) and assume
a uniform prior on all model parameters. This module is object-oriented and
designed to be easily extendable for regressions of other distributions. To do
so, one needs to sub-class the ClimTrendModel
class and implement a few
required routines; see TrendNormalModel.py
or other Trend*Model.py
files
for examples.
Getting started
# dates - a set of input dates
# data - corresponding data from those dates
import climtrends
import numpy as np
# initialize the MCMC model
linear_model = climtrends.TrendNormalModel(dates, data)
# run the sampler
linear_model.run_mcmc_sampler(num_samples = 1000)
# get samples of the slopes
slopes = linear_model.get_mean_trend_samples()
# get the 5th and 95th percentile slopes
slopes_5 = np.percentile(slopes, 5)
slopes_95 = np.percentile(slopes, 95)
Known Issues
- The model assumes that input data are vectors; things will likely break if not.
- Probably other issues exist. This code is tested and is verified to work in some base cases, but it is still in alpha stage and has not been tested across a range of settings.
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
File details
Details for the file climtrends-0.0.2.tar.gz
.
File metadata
- Download URL: climtrends-0.0.2.tar.gz
- Upload date:
- Size: 17.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 509677c4f91338d84e03510e2a7d6426d697fc6cd57933f54bd9b098207b2c05 |
|
MD5 | 08e53aab711f5c64fee9897f87d9bbc0 |
|
BLAKE2b-256 | 460627a75d6465c113b9e1ed6a6a637d50f06c07b33fc987d6824906dd1b5596 |
File details
Details for the file climtrends-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: climtrends-0.0.2-py3-none-any.whl
- Upload date:
- Size: 27.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50ca6a50d28879121cdbad3fbe46c2017735fb48699fc7a1274cd7b46a8c7d97 |
|
MD5 | 150b6208547f9c5352bef394a8fe2a5b |
|
BLAKE2b-256 | c8c64aad77421c9713e0739a3f45fe6e1115084d6458f80a2aa6edd92829ed2f |