Skip to main content

A Python package for Ratio-of-Uniforms sampling.

Project description

rusampling

rusampling.com

A Python package for Ratio-of-Uniforms sampling in multiple dimensions.

Ratio-of-Uniforms is a method of sampling random variables that uses the pdf, which does not need to be normalised, and requires minimal setup.

Install from the terminal with pip install RUSampling.

Development of this package was funded by the Lighthill Risk Network: https://lighthillrisknetwork.org.

Many thanks to Paul Northrop, the author of RUST, the package for Ratio-of-Uniforms sampling in R, and who helped me with the development of this project.

Usage

  • Create an instance of the Ru class, passing the log-pdf logf, the dimension d (default 1), and any extra arguments that the log-pdf takes.
  • Call this object's rvs method, passing the number of samples n to generate. This returns a (n, d)- dimensional numpy array of samples.

Example: Sampling the log-normal distribution

import numpy as np
import scipy
from ru import Ru

logf = scipy.stats.lognorm.logpdf

t = Ru(logf, s=1)
samples = t.rvs(n=100000)
t.plot()

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

rusampling-0.0.0.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rusampling-0.0.0-py3-none-any.whl (12.3 kB view details)

Uploaded Python 3

File details

Details for the file rusampling-0.0.0.tar.gz.

File metadata

  • Download URL: rusampling-0.0.0.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for rusampling-0.0.0.tar.gz
Algorithm Hash digest
SHA256 27dd635fd1e0ebca07b9ab9e3445febc4dc7d6611381b8286a080e1e1fc82e0b
MD5 e4174a658631f5156ad0f3475e145aeb
BLAKE2b-256 5771bc8689ee496c65507c9985c412b595f68570b7d599bb38e2672a7f74df06

See more details on using hashes here.

File details

Details for the file rusampling-0.0.0-py3-none-any.whl.

File metadata

  • Download URL: rusampling-0.0.0-py3-none-any.whl
  • Upload date:
  • Size: 12.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for rusampling-0.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e8f598a0595a22dee7318146fc7968f1f91f0a3b243cc7be7f96ae754dcca57a
MD5 5e9da2b4df9a4d832f19e5d94bdf4729
BLAKE2b-256 8b5dde1105ce82f50bbbad02a4b9341c12ee803d4ab8bbc6bbb43ea3e49e5e3a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page