https://github.com/poissonconsulting/universals
An R package of S3 generic methods for Bayesian analyses that generate MCMC samples
https://github.com/poissonconsulting/universals
cran generics model-fitting rstats s3
Last synced: 11 months ago
JSON representation
An R package of S3 generic methods for Bayesian analyses that generate MCMC samples
- Host: GitHub
- URL: https://github.com/poissonconsulting/universals
- Owner: poissonconsulting
- License: other
- Created: 2020-01-17T21:53:16.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2023-10-24T15:03:24.000Z (over 2 years ago)
- Last Synced: 2024-06-11T17:12:02.672Z (about 2 years ago)
- Topics: cran, generics, model-fitting, rstats, s3
- Language: R
- Homepage: https://poissonconsulting.github.io/universals/
- Size: 505 KB
- Stars: 4
- Watchers: 5
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.Rmd
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
---
output: github_document
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# universals 
[](https://lifecycle.r-lib.org/articles/stages.html#stable)
[](https://github.com/poissonconsulting/universals/actions/workflows/R-CMD-check.yaml)
[](https://app.codecov.io/gh/poissonconsulting/universals)
[](https://opensource.org/license/mit/)
[](https://cran.r-project.org/package=universals)

`universals` provides S3 generic methods and some default implementations
for Bayesian analyses that generate Markov Chain Monte Carlo (MCMC) samples.
The purpose of `universals` is to reduce package dependencies and conflicts.
## Philosophy
The methods are primarily designed to be used for Bayesian analyses that generate Markov Chain Monte Carlo (MCMC) samples but many can also be used for Maximum Likelihood (ML) and other types of analyses.
The names of the functions are based on the following definitions/concepts:
- A `term` is a single real or integer `value`.
- A `par` (short for parameter) is a numeric object of terms.
- An MCMC object is a collection of MCMC samples that refer to a set of terms.
- The samples are arranged in one or more `chains` of the same length (number of `iterations`).
- The number of `simulations` is the product of the number of iterations and the number of chains.
- The number of `samples` is the product of the number of simulations and the number of `terms`.
The 'nlist' package implements many of the methods for its 'nlists' class.
## Usage
`universals` is designed to be used by package developers.
It is recommended to import and re-export the generics of interest. For example, to provide a method for the S3 `pars()` method, use the following `roxygen2` code:
``` {r, eval = FALSE}
#' @importFrom universals pars
#' @export
universals::pars
```
## Installation
### Release
To install the release version from [CRAN](https://CRAN.R-project.org/package=universals).
```r
install.packages("universals")
```
The website for the release version is at .
### Development
To install the development version from [r-universe](https://poissonconsulting.r-universe.dev/universals).
```r
install.packages("universals", repos = c("https://poissonconsulting.r-universe.dev", "https://cloud.r-project.org"))
```
or from [GitHub](https://github.com/poissonconsulting/universals)
```r
# install.packages("remotes")
remotes::install_github("poissonconsulting/universals")
```
## Inspiration
- [r-lib/generics](https://github.com/r-lib/generics)
## Contribution
Please report any [issues](https://github.com/poissonconsulting/universals/issues).
[Pull requests](https://github.com/poissonconsulting/universals/pulls) are always welcome.
## Code of Conduct
Please note that the universals project is released with a [Contributor Code of Conduct](https://contributor-covenant.org/version/2/0/CODE_OF_CONDUCT.html).
By contributing to this project, you agree to abide by its terms.