Skip to content

nimble

1.4.3Package record

MCMC, Particle Filtering, and Programmable Hierarchical Modeling

27packages dependsuggested by 10
76.7Kdownloads / year
0.1%test coverage
13/13flavors OK

Overview

About

A system for writing hierarchical statistical models largely compatible with 'BUGS' and 'JAGS', writing nimbleFunctions to operate models and do basic R-style math, and compiling both models and nimbleFunctions via custom-generated C++. 'NIMBLE' includes default methods for MCMC, Laplace Approximation, deterministic nested approximations, Monte Carlo Expectation Maximization, and some other tools. The nimbleFunction system makes it easy to do things like implement new MCMC samplers from R, customize the assignment of samplers to different parts of a model from R, and compile the new samplers automatically via C++ alongside the samplers 'NIMBLE' provides. 'NIMBLE' extends the 'BUGS'/'JAGS' language by making it extensible: New distributions and functions can be added, including as calls to external compiled code. Although most people think of MCMC as the main goal of the 'BUGS'/'JAGS' language for writing models, one can use 'NIMBLE' for writing arbitrary other kinds of model-generic algorithms as well. A full User Manual is available at https://r-nimble.org.

Changes in 1.4.3

USER LEVEL CHANGES

  • Improve warning message about bad pWAIC values to make clear that

individual pWAIC values can be obtained via getWAICdetails (Issue 1626).

  • Modify how getParents handles self=FALSE to avoid returning any of the

input nodes. Formerly if multiple inputs were provided and one of the provided

inputs was the parent of another, this would be returned (PR #1633).

BUG FIXES

  • Fix prior_samples MCMC sampler. Formerly this sampler gave incorrect

results as it did not account for the density of dependent variables and

simply iterated through the prior samples (PR #1624).

  • Fix/robustify dimension checking to avoid warning about dimension of

right-hand side-only dynamically-indexed variables (PR #1632).

Show all changes in 1.4.3Hide the rest of the changes in 1.4.3
  • Allow constants whose names start with a period (PR #1629).
  • Fix corner case in getConditionallyIndepedentSets when nodes is

provided and givenNodes is not (Issue #1625).

DEVELOPER LEVEL CHANGES

  • Update handling of various cases in setupMargNodes to fix some

inconsistencies in corner cases (PR #1633).

  • Fix UBSAN issue as requested by CRAN, avoiding std::copy calls that

make zero-length copy (PR #1627).

From inst/NEWS.md in the release

Install

Health

CRAN checks
13OK
Slowest check: 18.6 min · r-oldrel-windows-x86_64
Status changes
  • OK13 OK2026-08-26
  • NOTE12 OK, 1 NOTE2026-07-11
  • OK13 OK2026-05-02
  • NOTE10 OK, 4 NOTE2026-04-09
  • WARNING6 OK, 5 NOTE, 3 WARNING2026-03-21
Show 1 earlier changeHide 1 earlier change
  • NOTE11 OK, 3 NOTE2026-03-10
Advisories

none known

Documentation

In release 1.4.3
READMEYes · 177 wordsVignettesNoNEWSYes · 100% structured · mentions 1.4.3Citation fileYes · cites a publicationWebsiteYes
Help pages
153 (1 internal)includes a package overview page
Examples that run
78%56 run in a plain check · 15 never run · 1 hold no code
Exported functions with examples
50%
Documented parameters
99%
Return-value docs
42%
Help pages citing references
16%

Downloads

76.7K
CRAN downloads in the past year
Rank #1,533 · ~210/day · ~6.4K/mo
Daily download trend is not available in this view yet.
5.4K30 days
15.7K90 days
76.7K1 year
Compare downloads with other packages →
Also on1.6K r2u15 autocran8.1K conda_forge248 c2d4u

Repository

198Stars
27Forks
98Open issues
0Open PRs
30Releases
5,197Commits
44Commit identities
bayesian-inferencemcmchierarchical-modelsprobabilistic-programmingbayesian-methodsr
License file reads as BSD-3-Clause · 5,197 commits · Last activity 2026-08-31 · 0% stars, 30d
Responsiveness
How these are sampled
PRs merged (all time)
90%
Median days to close, 50 most recently updated closed issues
52
Median days to close, 50 most recently updated closed PRs
14

Stars over time

2025-09-01 · 1802026-09-09 · 198
PracticesBeta

5 development-tooling and community-health practices detected across 3 families in the upstream repository

Checks run against github.com/nimble-dev/nimble on 2026-10-11.

Continuous integration (2)
GitHub ActionsAppVeyor
Governance and community (2)
Code of conductContributing guide
Research and citation (1)
Zenodo
How this is detected·Detection ruleset v3 (2026-09-26)

Dependencies

Declared dependencies
9 external dependencies (excludes base and recommended)

Installing nimble adds 13 packages (6 with compiled code, 8.5 MB of source tarballs). Heaviest: igraph 4.8 MB, vctrs 1.0 MB, rlang 766 KB.

Depends (1)
R >= 3.1.2
Imports (6)
LinkingTo (0)
none
Enhances (0)
none

People & History

People (16)
Author, Maintainer since 0.5 (2016)
Author · added in 0.12.0
WAIC
Author · added in 0.6-5
Author · added in 0.6-5
Author · added in 0.8.0
reversible jump MCMC
Author
Bayesian nonparametrics system
Author
packaging configuration
Author · added in 0.6.13
Bayesian nonparametrics system
Author · added in 1.0.0
node marginalization
Author · added in 1.1.0
Pólya-Gamma sampler, nimIntegrate, matrix exponential
Contributor · added in 0.8.0
code for the compilation system for an early version of NIMBLE
Contributor · added in 0.8.0
contributions to the cross-validation code
Contributor · added in 0.8.0
multivariate t distribution code
Listed in earlier versions (5)
Show 5 peopleHide 5 people
Cliff Anderson- Bergman
no longer listed · 0.6 to 0.6-6
see AUTHORS file for additional contributors.
no longer listed · 0.6-7 to 0.7.1
no longer listed · 0.6.13 to 0.9.0
no longer listed · 0.9.0 to 0.9.1
Abel Rodrìguez
no longer listed · 0.9.1 to 0.13.2
Releases (41)

Pick two releases to compare their code metrics.

  • 1.4.3Latest
    record
    2026-08-22 · current release · diff ↗
  • R
    R 4.6.0 released · 2026-04-24
  • 1.4.2
    record
    2026-04-01 · diff ↗
  • 1.4.1
    record
    2026-02-13 · diff ↗ ·
    added 1 export
    sampler_partial_mvn
  • 1.4.0
    record
    2025-12-13 · diff ↗ ·
    added 17 exports
    calc_dmnorm_inv_ld_AltParams, PDinverse_logdet, derived_BASE, derived_logProb, derived_mean, derived_predictive, derived_variance, dmnorm_inv_ld, emptyParam, expAv, expm, gaussParam, getParam_BASE, multiGaussParam, rmnorm_inv_ld, sampler_barker, splitLatents
  • R
    R 4.5.0 released · 2025-04-11
  • 1.3.0
    record
    2024-12-17 · diff ↗ ·
    removed 1 export
    model_macro_builder
    added 1 export
    buildMacro
  • 1.2.1
    record
    2024-07-30 · diff ↗ ·
    added 1 export
    sampler_RW_multinomial
  • 1.2.0
    record
    2024-06-09 · diff ↗ ·
    removed 2 exports
    MCMCsuite, compareMCMCs
    added 8 exports
    MCEM_mcse, buildAGHQ, nimOptimMethod, runAGHQ, runLaplace, sampler_noncentered, sampler_polyagamma, summaryAGHQ
  • R
    R 4.4.0 released · 2024-04-24
  • 1.1.0
    record
    2024-01-31 · diff ↗ ·
    removed 1 export
    sampler_RW_multinomial
    added 3 exports
    getMacroParameters, nimIntegrate, sampler_prior_samples
  • 1.0.1
    record
    2023-06-15 · diff ↗
  • 1.0.0
    record
    2023-05-23 · diff ↗ ·
    removed 2 exports
    waicDetailsList, waicList
    added 15 exports
    mcmc_createModelObject, ADbreak, ADproxyModelClass, AGHQuad_params, AGHQuad_summary, buildLaplace, clearCompiled, getConditionallyIndependentSets, makeModelDerivsInfo, parameterTransform, pow_int, setupMargNodes, summaryLaplace, waicDetailsNimbleList, waicNimbleList
  • 0.13.2
    record
    2023-05-14 · diff ↗
  • R
    R 4.3.0 released · 2023-04-21
  • 0.13.1
    record
    2022-12-14 · diff ↗
Show 39 earlier eventsHide 39 earlier events
  • 0.13.0
    record
    2022-11-15 · diff ↗ ·
    removed 1 export
    sampler_posterior_predictive_branch
  • R
    R 4.2.0 released · 2022-04-22
  • 0.12.2
    record
    2022-02-24 · diff ↗ ·
    added 2 exports
    messageIfVerbose, sampler_slice_CRP_base_param
  • 0.12.1
    record
    2021-10-09 · diff ↗
  • 0.12.0
    record
    2021-09-28 · diff ↗ ·
    added 7 exports
    dlkj_corr_cholesky, rlkj_corr_cholesky, sampler_RW_block_lkj_corr_cholesky, sampler_RW_lkj_corr_cholesky, waicList, waicDetailsList, calculateWAIC
  • 0.11.1
    record
    2021-05-23 · diff ↗
  • R
    R 4.1.0 released · 2021-05-18
  • 0.11.0
    record
    2021-04-17 · diff ↗ ·
    added 1 export
    sampler_posterior_predictive_branch
  • 0.10.1
    record
    2020-11-23 · diff ↗
  • 0.10.0
    record
    2020-10-10 · diff ↗ ·
    removed 4 exports
    getLoadingNamespace, sampler_CRP_old, sampler_RW_PF, sampler_RW_PF_block
    added 5 exports
    calcAdaptationFactor, is.nfGenerator, nimbleFunctionList, extractControlElement, nf_preProcessMemberDataObject
  • 0.9.1
    record
    2020-05-22 · diff ↗
  • R
    R 4.0.0 released · 2020-04-24
  • 0.9.0
    record
    2019-12-18 · diff ↗ ·
    removed 2 exports
    sampler_RJ, sampler_toggled
    added 5 exports
    any_na, any_nan, buildIteratedFilter2, sampler_RJ_fixed_prior, sampler_RJ_toggled
  • 0.8.0
    record
    2019-06-02 · diff ↗ ·
    removed 5 exports
    combine_MCMC_comparison_results, make_MCMC_comparison_pages, rename_MCMC_comparison_method, reshape_comparison_results, updateMCMCcomparisonWithHighOrderESS
    added 4 exports
    configureRJ, sampler_RJ, sampler_RJ_indicator, sampler_toggled
  • R
    R 3.6.0 released · 2019-04-26
  • 0.7.1
    record
    2019-03-12 · diff ↗
  • 0.7.0.1
    record
    2019-03-01 · diff ↗
  • 0.7.0
    record
    2019-02-01 · diff ↗
  • 0.6.13
    record
    2019-01-26 · diff ↗ ·
    added 7 exports
    ddexp, pdexp, printErrors, qdexp, rdexp, sampler_CRP_old, sampler_RW_wishart
  • 0.6-12
    record
    2018-07-27 · diff ↗
  • 0.6-11
    record
    2018-06-14 · diff ↗ ·
    added 7 exports
    cc_getNodesInExpr, dCRP, getSamplesDPmeasure, rCRP, sampler_CRP, sampler_CRP_concentration, stick_breaking
  • R
    R 3.5.0 released · 2018-04-23
  • 0.6-10
    record
    2018-03-25 · diff ↗
  • unarchivedReturned to CRAN
    2018-02-07
  • 0.6-9
    record
    2018-02-07 · diff ↗
  • archivedRemoved from CRAN
    2018-02-01
    policy violation Forces the use of '-fPIC', whereas some Linux compilers use '-KPIC' and overriding the user's settings is not acceptable There were also pragmas suppressing warnings
  • 0.6-8
    record
    2017-11-22 · diff ↗
  • 0.6-7
    record
    2017-11-15 · diff ↗ ·
    added 22 exports
    calc_dcatConjugacyContributions, CAR_calcM, CAR_calcC, CAR_calcCmatrix, CAR_calcEVs2, CAR_calcEVs3, as.carCM, carBounds, carMaxBound, carMinBound, dcar_proper, is.Cmodel, is.Cnf, is.Rmodel, is.model, model_macro_builder, nimbleMCMC, rcar_proper, runCrossValidate, sampler_CAR_proper, samplesSummary, withNimbleOptions
  • 0.6-6
    record
    2017-07-29 · diff ↗ ·
    added 11 exports
    ADNimbleList, CAR_calcNumIslands, as.carAdjacency, dcar_normal, nimDerivs, nimbleExternalCall, nimbleRcall, optimDefaultControl, rcar_normal, sampler_CAR_normal, sampler_categorical
  • 0.6-5
    record
    2017-06-07 · diff ↗ ·
    added 13 exports
    calc_dwishAltParams, dflat, dhalfflat, dinvwish_chol, dsqrtinvgamma, nimOptim, nimOptimDefaultControl, optimControlNimbleList, optimResultNimbleList, rflat, rhalfflat, rinvwish_chol, rsqrtinvgamma
  • 0.6-4
    record
    2017-04-25 · diff ↗ ·
    added 18 exports
    nimbleType, dinvgamma, eigenNimbleList, is.nl, nimC, nimEigen, nimLogical, nimRep, nimRound, nimSeq, nimSvd, nimbleList, pinvgamma, qinvgamma, rinvgamma, sampler_AF_slice, sampler_RW_dirichlet, svdNimbleList
  • R
    R 3.4.0 released · 2017-04-21
  • 0.6-3
    record
    2016-12-14 · diff ↗
  • 0.6-2
    record
    2016-11-23 · diff ↗ ·
    added 9 exports
    getBound, getDimension, getDistributionInfo, getParamNames, getType, isDiscrete, isUserDefined, makeBoundInfo, pqDefined
  • 0.6-1
    record
    2016-10-11 · diff ↗ ·
    added 2 exports
    nimbleUserNamespace, Rmatrix2mvOneVar
  • 0.6
    record
    2016-09-02 · diff ↗ ·
    removed 327 exports
    accessorVectorLength_setupCodeTemplate, activeBindingTemplateLength1NonScalar, addArg, addBlockFromCppName, addDistKeywordProcessors, addDistList2matchFunctions, addNecessarySetupCode, addNewCode, addNodeFxn, addNodeFxn_LOOP, addSamplerToSpec, addSetupCodeNames, addSingleModelValuesAccess, addSingleVarAccess, allLHSNodes_SetupTemplate, allModelNodes_SetupTemplate, allModelValuesVars_SetupTemplate, argInfo2PointerStaticCast, assignNumberedObject, autoBlockClass, autoBlockModel, autoBlockParamDefaults, BUGScode, BUGScontextClass, BUGSdeclClass, BUGSsingleContextClass, buildConjugateSamplerFunctions, buildModelInterface, buildNeededObjects, buildNimbleFxnInterface and 297 more
    added 25 exports
    calc_dmnormConjugacyContributions, getNodeFunctionIndexedInfo, nimbleInternalFunctions, nfVar<-, values<-, buildAuxiliaryFilter, buildBootstrapFilter, buildEnsembleKF, buildLiuWestFilter, dmvt_chol, identityMatrix, modelValuesConf, nimCat, nimInteger, nimMatrix, nimNumeric, rmvt_chol, run.time, runMCMC, sampler_RW_PF, sampler_RW_PF_block, sampler_RW_llFunction_block, sampler_RW_multinomial, sampler_binary, sampler_posterior_predictive
  • R
    R 3.3.0 released · 2016-05-03
  • 0.5
    record
    2016-03-29
  • R
    R 3.2.0 released · 2015-04-16

Package metadata

First published
2016-03-29
Total releases
41 / 10 yrs
License
BSD_3_clause + file LICENSE | GPL (>= 2) OSI · relicensed from BSD_3_clause + file LICENSE in 0.6-7
Copyright
See COPYRIGHTS file.
Minimum R
≥ 3.1.2
Download size
3.2 MB

Cite

Cite this package

Run in R for the authors' preferred citation:

citation("nimble")

The package provides a citation file that builds its entry when R runs it. Run citation() to see it.

Cite the R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA

Balamuta, J. J. (2026). R Observatory: Metrics for nimble version 1.4.3 [Data set]. HJJB, LLC. Data release v2026-10-18. https://doi.org/10.5281/zenodo.21843040

From data release v2026-10-18, which the citation names so these numbers can be found later. More on citing and the projects behind them.

Report a problem with this page →

Privacy choices

These apply to this browser and are stored on this device only. Nothing about your choice is sent to us.

Read the privacy policy