{"id":16518966,"url":"https://github.com/brandonwillard/particlebayes","last_synced_at":"2026-05-05T16:40:14.267Z","repository":{"id":146267870,"uuid":"246917081","full_name":"brandonwillard/ParticleBayes","owner":"brandonwillard","description":"Bayesian Particle Learning models in R","archived":false,"fork":false,"pushed_at":"2020-10-13T21:46:49.000Z","size":12757,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-13T09:12:00.187Z","etag":null,"topics":["bayesian","particle-filters","real-time-processing","state-space-models","time-series"],"latest_commit_sha":null,"homepage":"","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brandonwillard.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-12T19:40:13.000Z","updated_at":"2020-10-13T21:46:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"4830a150-8397-40d6-95f5-70b3b53a1f5f","html_url":"https://github.com/brandonwillard/ParticleBayes","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonwillard%2FParticleBayes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonwillard%2FParticleBayes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonwillard%2FParticleBayes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonwillard%2FParticleBayes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brandonwillard","download_url":"https://codeload.github.com/brandonwillard/ParticleBayes/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241577776,"owners_count":19985055,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bayesian","particle-filters","real-time-processing","state-space-models","time-series"],"created_at":"2024-10-11T16:44:21.674Z","updated_at":"2026-05-05T16:40:14.230Z","avatar_url":"https://github.com/brandonwillard.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"ParticleBayes\n=====\nParticleBayes is an R package that contains a collection of \n[particle filters](http://en.wikipedia.org/wiki/Particle_filter) \nfor a subset of hierarchical bayesian models, with a focus on sequentially \nlearning model parameters alongside state variables.  The R code calls an\nopen-source Java library, [ParticleLearningModels][plm], to perform calculations, \nso when/if a practitioner wants to implement a model in production, \nthe underlying, streaming-capable, API is available.\n  \nMost models are formulated as [dynamic linear models][dlm], or mixtures thereof,\nalthough some support for hidden markov models exists.\nThe models also implement  \n\n* [Water-filling resampling][waterfilling]\n* Parameter learning, via [Particle Learning][pl] where applicable\n\nCurrently, the implemented filters cover two response types:  \n\n* Multinomial/Categorical with a logistic link function  \n * 10-component [normal mixture approximation][fs1]  \n * [TBD][fs2]  \n* Multivariate Gaussian  \n\nand, naturally, their univariate equivalents.\n\nInstallation from R\n==\nParticleBayes depends on the rJava R package, so make sure it's installed and\noperational.  This also means you'll need to have a functional JRE, so if you\ndon't you can get one from \n[here](http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html#jre-6u45-oth-JPR), \ninstall, and then run ```R CMD javareconf``` (with sudo if you're using linux)\nat the command line.  If you're using a Mac, you might need to run something\nlike ```R CMD javareconf JAVA_CPPFLAGS=-I/System/Library/Frameworks/JavaVM.framework/Headers```\ninstead.  Pay attention for any errors in the output, and look around the internet \nfor more information.\n \nWhile ParticleBayes is still in it's beta stages, installation in R requires \nthe [devtools][dt] package and something like the following:\n```\nlibrary(devtools)\ninstall_url(\"https://bitbucket.org/brandonwillard/particlebayes/get/HEAD.zip\", subdir=\"pkg\")\n```\nthen, as usual, add ```library(ParticleBayes)``` to your R source to use.  \nNOTE: This will pick up the most recently pushed version of the code (i.e. the\njar file in ```pkg/inst/java```).  Inclusion of this file in the repo is temporary,\nthat is, until this package gets submitted to CRAN.\n\nDevelopment Setup and Installation\n==\nParticleBayes uses [Maven](http://maven.apache.org/), so you'll need to download that.  \nOnce you have it,\n```mvn clean package -Dmaven.test.skip=true```\nshould create the necessary jars in ```pkg/inst/java```, so that the code is callable from\nR.   \nThe java code is called, within R, through [rJava][rj]\n\nSimilar to the R installation, and from the project's root directory, \none possible development setup script could include\n```r\nlibrary(devtools)\n\ndev_mode(on=T)\n\nsystem(\"mvn clean package -Dmaven.test.skip=true\")\n\ninstall_local(\"./pkg\")\n\noptions(java.parameters=\n        c(\"-Xmx2g\", \n          \"-Xdebug\", \n          \"-Xrunjdwp:server=y,transport=dt_socket,address=4001,suspend=n\"))\n\n\nlibrary(ParticleBayes)\n\n...\n\ndev_mode(on=F)\n```\nThe script will build the Java code, install the package in an isolated environment \n(see [devtools][dt]), and set up the JVM for debugging. \n\n[rj]:http://www.rforge.net/rJava/\n[dt]:https://github.com/hadley/devtools\n[plm]:https://bitbucket.org/brandonwillard/particlelearningmodels\n[dlm]:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.34.9040\n[fs1]:http://www.sciencedirect.com/science/article/pii/S0167947306003720\n[fs2]:http://dl.acm.org/citation.cfm?id=2414419\n[pl]:http://projecteuclid.org/euclid.ss/1280841735\n[waterfilling]:tbd\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrandonwillard%2Fparticlebayes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrandonwillard%2Fparticlebayes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrandonwillard%2Fparticlebayes/lists"}