nimble

The base NIMBLE package for R

https://github.com/nimble-dev/nimble

Science Score: 59.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    12 of 38 committers (31.6%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.9%) to scientific vocabulary

Keywords

bayesian-inference bayesian-methods hierarchical-models mcmc probabilistic-programming r
Last synced: 6 months ago · JSON representation

Repository

The base NIMBLE package for R

Basic Info
  • Host: GitHub
  • Owner: nimble-dev
  • License: bsd-3-clause
  • Language: C++
  • Default Branch: devel
  • Homepage: http://R-nimble.org
  • Size: 72.5 MB
Statistics
  • Stars: 181
  • Watchers: 19
  • Forks: 23
  • Open Issues: 99
  • Releases: 26
Topics
bayesian-inference bayesian-methods hierarchical-models mcmc probabilistic-programming r
Created over 11 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Code of conduct Zenodo

README.md

NIMBLE

Build Status AppVeyor Build Status CRAN DOI Google Group

Website | Documentation | Examples | Developing | Workshop materials

NIMBLE is an R package for hierarchical statistical modeling (aka graphical modeling). It enables writing general models along with methods such as Markov chain Monte Carlo (MCMC), particle filtering (aka sequential Monte Carlo), Laplace approximation and other general methods.

For writing statistical models, NIMBLE adopts and extends the BUGS language, making it largely compatible with BUGS and JAGS. NIMBLE makes BUGS extensible, allowing users to add new functions and new distributions.

For writing algorithms (aka analysis methods), NIMBLE provides a model-generic programming system embedded within R. This provides control over models as generic objects and mathematical manipulation of model variables. In this way, NIMBLE's programming paradigm treats probabilistic graphical models as a basic programming construct.

Both models and algorithms are compiled via generating customized C++ and providing seamless interfaces to compiled C++ from R.

NIMBLE's most developed methods are for MCMC. Users can easily customize sampler configurations from R and write new samplers in NIMBLE's algorithm programming system.

Developers of new computational statistical methods can build them in NIMBLE to gain the benefits of its graphical modeling language, compilation, and distribution via CRAN.

Installation

Install prerequisites

NIMBLE needs a C++ compiler and the GNU make utility. Typically, Mac users can obtain these by installing Xcode, including command line utilities, while Windows users can obtain them by installing Rtools. See the User Manual for more details.

Install NIMBLE

The easiest way to install NIMBLE is via CRAN: r install.packages("nimble")

To install from the NIMBLE website: r library(devtools) install.packages("nimble", type = "source", repos = "https://r-nimble.org")

Note that NIMBLE's sequential Monte Carlo (SMC; aka particle filtering) methods are now (as of version 0.10.0) in the nimbleSMC package.

Note that MCMCsuite and compareMCMCs have been migrated to the compareMCMCs package, now available on CRAN.

Citation

In published work that uses or mentions NIMBLE, please cite:

de Valpine, P., D. Turek, C.J. Paciorek, C. Anderson-Bergman, D. Temple Lang, and R. Bodik. 2017. Programming with models: writing statistical algorithms for general model structures with NIMBLE. Journal of Computational and Graphical Statistics 26:403-413. https://doi.org/10.1080/10618600.2016.1172487.

In published work that uses NIMBLE, please also cite the package version:

de Valpine, P., C. Paciorek, D. Turek, N. Michaud, C. Anderson-Bergman, F. Obermeyer, C. Wehrhahn Cortes, A. Rodriguez, D. Temple Lang, W. Zhang, S. Paganin, and P. van Dam-Bates. 2024. NIMBLE: MCMC, Particle Filtering, and Programmable Hierarchical Modeling. doi: 10.5281/zenodo.1211190. R package version 1.2.1, https://cran.r-project.org/package=nimble.

To help us track usage to justify funding support for NIMBLE, please include the DOI in the citation.

Licenses

Nimble is released under a mixture of licenses, and depends on additional third-party libraries with compatible licenses.

Acknowledgements

The development of NIMBLE has been funded by:

  • an NSF Advances in Biological Informatics grant (DBI-1147230) to P. de Valpine, C. Paciorek, and D. Temple Lang;
  • an NSF SI2-SSI grant (ACI-1550488) to P. de Valpine, C. Paciorek, and D. Temple Lang;
  • an NSF Collaborative Research grant (DMS-1622444) to P. de Valpine, A. Rodriguez, and C. Paciorek; and
  • an NSF Collaborative Research grant (DMS-2152860) to P. de Valpine, C. Paciorek, and D. Turek.

with additional support provided by postdoctoral funding for D. Turek from the Berkeley Institute for Data Science and Google Summer of Code fellowships for N. Michaud (2015) and C. Lewis-Beck (2017).

Owner

  • Name: nimble-dev
  • Login: nimble-dev
  • Kind: organization

GitHub Events

Total
  • Create event: 41
  • Release event: 1
  • Issues event: 61
  • Watch event: 22
  • Delete event: 36
  • Issue comment event: 127
  • Push event: 250
  • Gollum event: 1
  • Pull request review comment event: 1
  • Pull request review event: 1
  • Pull request event: 89
  • Fork event: 5
Last Year
  • Create event: 41
  • Release event: 1
  • Issues event: 61
  • Watch event: 22
  • Delete event: 36
  • Issue comment event: 127
  • Push event: 250
  • Gollum event: 1
  • Pull request review comment event: 1
  • Pull request review event: 1
  • Pull request event: 89
  • Fork event: 5

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 4,412
  • Total Committers: 38
  • Avg Commits per committer: 116.105
  • Development Distribution Score (DDS): 0.615
Past Year
  • Commits: 118
  • Committers: 6
  • Avg Commits per committer: 19.667
  • Development Distribution Score (DDS): 0.271
Top Committers
Name Email Commits
Christopher Paciorek p****k@s****u 1,698
perrydv p****e@b****u 694
danielturek d****k@g****m 506
Nicholas Michaud n****d@g****m 472
danielturek d****k@b****u 341
perrydv p****y@P****l 232
Fritz Obermeyer f****r@g****m 91
pistacliffcho c****s@u****u 71
NLMichaud m****d@i****u 71
Duncan Temple Lang d****n@r****g 59
perrydv p****y@a****t 39
Wei Zhang w****2@g****k 32
Christopher Paciorek p****k@C****l 19
paciorek@stat.berkeley.edu p****k@C****l 19
DRJP d****l@a****r 16
perrydv p****y@P****l 10
Peter Sujan p****n@g****m 4
Duncan Temple Lang d****g@u****u 4
perrydv p****y@P****l 3
paciorek@stat.berkeley.edu p****k@C****u 3
pistacliffcho p****o@h****m 3
jpdunc23 j****3 3
Ken Kellner k****r 3
David LeBauer d****r@g****m 2
Lauren Ponisio l****o@b****u 2
danielturek d****k@a****u 2
danielturek m****8@g****m 2
rpatin r****n@f****r 1
Lauren Ponisio l****p@f****u 1
David Pleydell d****l@i****r 1
and 8 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 177
  • Total pull requests: 219
  • Average time to close issues: 3 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 33
  • Total pull request authors: 8
  • Average comments per issue: 2.29
  • Average comments per pull request: 2.36
  • Merged pull requests: 175
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 41
  • Pull requests: 80
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 18 days
  • Issue authors: 8
  • Pull request authors: 7
  • Average comments per issue: 1.0
  • Average comments per pull request: 1.35
  • Merged pull requests: 52
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • paciorek (91)
  • perrydv (28)
  • danielturek (13)
  • paul-vdb (3)
  • BertvanderVeen (2)
  • csbrown (2)
  • DRJP (2)
  • hiroshi-in-uk (2)
  • SILIZ4 (2)
  • ralmond (2)
  • pehkawn (2)
  • luchinoprince (2)
  • kenkellner (2)
  • stephematician (1)
  • cwliu007 (1)
Pull Request Authors
  • paciorek (133)
  • danielturek (70)
  • perrydv (61)
  • kenkellner (14)
  • paul-vdb (4)
  • adamlilith (2)
  • JimmyJHickey (2)
  • adamgorm (2)
Top Labels
Issue Labels
cleanup (35) bug (27) enhancement (7) question (3) performance (2)
Pull Request Labels
enhancement (4)

Packages

  • Total packages: 1
  • Total downloads:
    • cran 2,791 last-month
  • Total docker downloads: 107,964
  • Total dependent packages: 16
  • Total dependent repositories: 42
  • Total versions: 37
  • Total maintainers: 1
cran.r-project.org: nimble

MCMC, Particle Filtering, and Programmable Hierarchical Modeling

  • Versions: 37
  • Dependent Packages: 16
  • Dependent Repositories: 42
  • Downloads: 2,791 Last month
  • Docker Downloads: 107,964
Rankings
Stargazers count: 2.9%
Forks count: 3.8%
Dependent repos count: 4.0%
Dependent packages count: 4.0%
Downloads: 7.8%
Average: 8.0%
Docker downloads count: 25.8%
Maintainers (1)
Last synced: 6 months ago

Dependencies

.github/workflows/ci.yaml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/upload-artifact main composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
packages/nimble/DESCRIPTION cran
  • R >= 3.1.2 depends
  • R6 * imports
  • coda * imports
  • igraph * imports
  • methods * imports
  • testthat * suggests