Code

Overview

My preferred programming languages are R and C++, and in most of my projects I use a combination of the two (usually via {Rcpp}). I also enjoy delving into Python, especially when working with others on machine-learning/deep-learning related projects, either directly or again through its plenty R integrations (e.g. {reticulate}, {tensorflow}, {keras}). During my research years as physicist, I made extensive use of Wolfram and occasionally worked with Fortran.

This page contains a selected list of open-source projects, mostly but not only R packages, I’m working or have worked on.

R packages

The R packages listed below can be installed from my R-universe public repository. This list is automatically updated every day, round midnight (UTC).

Last update: 2021-09-24 00:14:44

runi

CRAN status

Client for R-universe APIs. Client for R-universe APIs.

r2r

CRAN status

R-Object to R-Object Hash Maps. Implementation of hash tables (hash sets and hash maps) in R, featuring arbitrary R objects as keys, arbitrary hash and key-comparison functions, and customizable behaviour upon queries of missing keys.

kgrams

CRAN status

Classical k-gram Language Models. Tools for training and evaluating k-gram language models in R, supporting several probability smoothing techniques, perplexity computations, random text generation and more.

scribblr

CRAN status

A Notepad Inside RStudio. A project aware notepad inside RStudio, for taking quick project-related notes without distractions. RStudio addin.

gsample

CRAN status

Efficient Weighted Sampling Without Replacement. Sample without replacement using the Gumbel-Max trick (c.f. ).

sbo

CRAN status

Text Prediction via Stupid Back-Off N-Gram Models. Utilities for training and evaluating text predictors based on Stupid Back-Off N-gram models (Brants et al., 2007, https://www.aclweb.org/anthology/D07-1090/).

fcci

CRAN status

Feldman-Cousins Confidence Intervals. Provides support for building Feldman-Cousins confidence intervals [G. J. Feldman and R. D. Cousins (1998) doi:10.1103/PhysRevD.57.3873].

Code excerpts

This Section lists some smaller projects, including code snippets, algorithm implementations and similars.

viterbi

Optimal paths in Hidden Markov Models. C++ implementation of Viterbi’s dynamic programming algorithm for finding optimal paths in the hidden space of hidden Markov models.

dijkstra

Minimum length paths in directed graphs. C++ implementation of Dijkstra’s algorithm for finding minimum length paths in weighted directed graphs.

Corrections

If you see mistakes or want to suggest changes, please create an issue on the source repository.

Reuse

Text and figures are licensed under Creative Commons Attribution CC BY-SA 4.0. Source code is available at https://github.com/vgherard/vgherard.github.io/, unless otherwise noted. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".