Skip to main content

Uses Gaussian processes to smooth data and estimate first- and second-order derivatives

Project description

A Python package for smoothing data and estimating first- and second-order derivatives and their errors.

Covariance functions can either be linear, squared exponential, neural network-like, or squared exponential with a linear trend.

An example workflow to smooth data (x, y), where the columns of y are replicates, is

>>> import gaussian process as gp
>>> g= gp.maternGP({0: (-4, 4), 1: (-4, 4), 2: (-4, -2)}, x, y)

The dictionary sets bounds on the hyperparameters, so that 0: (-4, 4) means that the bounds on the first hyperparameter are 1e-4 and 1e4.

>>> g.info()

explains what each hyperparameter does.

Once g is instantiated,

>>> g.findhyperparameters()
>>> g.results()
>>> g.predict(x, derivs= 2)

optimises the hyperparameters and determines a smoothed version of the data and estimates the derivatives.

The results can be visualised by

>>> import matplotlib.pylab as plt
>>> plt.figure()
>>> plt.subplot(2,1,1)
>>> g.sketch('.')
>>> plt.subplot(2,1,2)
>>> g.sketch('.', derivs= 1)
>>> plt.show()

and are available as g.f and g.fvar (smoothed data and error), g.df and g.dfvar (estimate of dy/dx), and g.ddf and g.ddfvar (estimate of d2y/dx2).

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

gaussianprocessderivatives-0.1.65.tar.gz (11.6 kB view hashes)

Uploaded Source

Built Distribution

gaussianprocessderivatives-0.1.65-py3-none-any.whl (16.2 kB view hashes)

Uploaded Python 3

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