Rcpp - Seamless R and C++ Integration
The 'Rcpp' package provides R functions as well as C++ classes which offer a seamless integration of R and C++. Many R data types and objects can be mapped back and forth to C++ equivalents which facilitates both writing of new code as well as easier integration of third-party libraries. Documentation about 'Rcpp' is provided by several vignettes included in this package, via the 'Rcpp Gallery' site at <https://gallery.rcpp.org>, the paper by Eddelbuettel and Francois (2011, <doi:10.18637/jss.v040.i08>), the book by Eddelbuettel (2013, <doi:10.1007/978-1-4614-6868-4>) and the paper by Eddelbuettel and Balamuta (2018, <doi:10.1080/00031305.2017.1375990>); see 'citation("Rcpp")' for details.
Last updated
c-plus-plusc-plus-plus-14c-plus-plus-17c-plus-plus-20c-plus-plus-23rcppcpp
22.96 score 792 stars 14k dependents 14k scripts 1.8M downloadsdigest - Create Compact Hash Digests of R Objects
Implementation of a function 'digest()' for the creation of hash digests of arbitrary R objects (using the 'md5', 'sha-1', 'sha-256', 'crc32', 'xxhash', 'murmurhash', 'spookyhash', 'blake3', 'crc32c', 'xxh3_64', and 'xxh3_128' algorithms) permitting easy comparison of R language objects, as well as functions such as 'hmac()' to create hash-based message authentication code. Please note that this package is not meant to be deployed for cryptographic purposes for which more comprehensive (and widely tested) libraries such as 'OpenSSL' should be used.
Last updated
hash-digest
19.79 score 121 stars 7.5k dependents 13k scripts 1.2M downloadsRcppEigen - 'Rcpp' Integration for the 'Eigen' Templated Linear Algebra Library
R and 'Eigen' integration using 'Rcpp'. 'Eigen' is a C++ template library for linear algebra: matrices, vectors, numerical solvers and related algorithms. It supports dense and sparse matrices on integer, floating point and complex numbers, decompositions of such matrices, and solutions of linear systems. Its performance on many algorithms is comparable with some of the best implementations based on 'Lapack' and level-3 'BLAS'. The 'RcppEigen' package includes the header files from the 'Eigen' C++ template library. Thus users do not need to install 'Eigen' itself in order to use 'RcppEigen'. Since version 3.1.1, 'Eigen' is licensed under the Mozilla Public License (version 2); earlier version were licensed under the GNU LGPL version 3 or later. 'RcppEigen' (the 'Rcpp' bindings/bridge to 'Eigen') is licensed under the GNU GPL version 2 or later, as is the rest of 'Rcpp'.
Last updated
algorithmc-plus-pluseigeneigen-libraryopenblascppopenmp
17.47 score 116 stars 4.0k dependents 596 scripts 989k downloadsanytime - Anything to 'POSIXct' or 'Date' Converter
Convert input in any one of character, integer, numeric, factor, or ordered type into 'POSIXct' (or 'Date') objects, using one of a number of predefined formats, and relying on Boost facilities for date and time parsing.
Last updated
boostc-plus-plus-11conversionscpp11datedatetimeposixctrcppcpp
13.93 score 171 stars 107 dependents 1.4k scripts 51k downloadsRcppAnnoy - 'Rcpp' Bindings for 'Annoy', a Library for Approximate Nearest Neighbors
'Annoy' is a small C++ library for Approximate Nearest Neighbors written for efficient memory usage as well an ability to load from / save to disk. This package provides an R interface by relying on the 'Rcpp' package, exposing the same interface as the original Python wrapper to 'Annoy'. See <https://github.com/spotify/annoy> for more on 'Annoy'. 'Annoy' is released under Version 2.0 of the Apache License. Also included is a small Windows port of 'mmap' which is released under the MIT license.
Last updated
annoynearestnearest-neighborscpp
12.72 score 77 stars 200 dependents 95 scripts 59k downloadsinline - Functions to Inline C, C++, Fortran Function Calls from R
Functionality to dynamically define R functions and S4 methods with 'inlined' C, C++ or Fortran code supporting the .C and .Call calling conventions.
Last updated
fortranrcpp
12.46 score 47 stars 337 dependents 676 scripts 256k downloadsRcppTOML - 'Rcpp' Bindings to Parser for "Tom's Obvious Markup Language"
The configuration format defined by 'TOML' (which expands to "Tom's Obvious Markup Language") specifies an excellent format (described at <https://toml.io/en/>) suitable for both human editing as well as the common uses of a machine-readable format. This package uses 'Rcpp' to connect to the 'toml++' parser written by Mark Gillard to R.
Last updated
c-plus-plus-11tomltoml-parsertoml-parsingcpp
12.27 score 39 stars 558 dependents 185 scripts 173k downloadsRProtoBuf - R Interface to the 'Protocol Buffers' 'API' (Version 2 or 3)
Protocol Buffers are a way of encoding structured data in an efficient yet extensible format. Google uses Protocol Buffers for almost all of its internal 'RPC' protocols and file formats. Additional documentation is available in two included vignettes one of which corresponds to our 'JSS' paper (2016, <doi:10.18637/jss.v071.i02>. A sufficiently recent version of 'Protocol Buffers' library is required; currently version 3.3.0 from 2017 is the tested minimum.
Last updated
c-plus-plusprotocol-buffersprotobufcpp
11.38 score 81 stars 23 dependents 141 scripts 2.3k downloadsnanotime - Nanosecond-Resolution Time Support for R
Full 64-bit resolution date and time functionality with nanosecond granularity is provided, with easy transition to and from the standard 'POSIXct' type. Three additional classes offer interval, period and duration functionality for nanosecond-resolution timestamps.
Last updated
datetimedatetimesnanosecond-resolutionnanosecondscpp
11.24 score 56 stars 18 dependents 161 scripts 14k downloadsdrat - 'Drat' R Archive Template
Creation and use of R Repositories via helper functions to insert packages into a repository, and to add repository information to the current R session. Two primary types of repositories are support: gh-pages at GitHub, as well as local repositories on either the same machine or a local network. Drat is a recursive acronym: Drat R Archive Template.
Last updated
repositoryrepository-tools
10.91 score 156 stars 13 dependents 117 scripts 1.8k downloadsRcppGSL - 'Rcpp' Integration for 'GNU GSL' Vectors and Matrices
'Rcpp' integration for 'GNU GSL' vectors and matrices The 'GNU Scientific Library' (or 'GSL') is a collection of numerical routines for scientific computing. It is particularly useful for C and C++ programs as it provides a standard C interface to a wide range of mathematical routines. There are over 1000 functions in total with an extensive test suite. The 'RcppGSL' package provides an easy-to-use interface between 'GSL' data structures and R using concepts from 'Rcpp' which is itself a package that eases the interfaces between R and C++. This package also serves as a prime example of how to build a package that uses 'Rcpp' to connect to another third-party library. The 'autoconf' script, 'inline' plugin and example package can all be used as a stanza to write a similar package against another library.
Last updated
c-plus-plusgnu-gslhacktoberfestrcppgslcpp
10.68 score 33 stars 57 dependents 83 scripts 10k downloadslittler - R at the Command-Line via 'r'
A scripting and command-line front-end is provided by 'r' (aka 'littler') as a lightweight binary wrapper around the GNU R language and environment for statistical computing and graphics. While R can be used in batch mode, the r binary adds full support for both 'shebang'-style scripting (i.e. using a hash-mark-exclamation-path expression as the first line in scripts) as well as command-line use in standard Unix pipelines. In other words, r provides the R language without the environment.
Last updated
embeddedexampleslittler
9.67 score 330 stars 18 scripts 2.9k downloadstint - 'tint' is not 'Tufte'
A 'tufte'-alike style for 'rmarkdown'. A modern take on the 'Tufte' design for pdf and html vignettes, building on the 'tufte' package with additional contributions from the 'knitr' and 'ggtufte' package, and also acknowledging the key influence of 'envisioned css'.
Last updated
markdownvignette
9.58 score 280 stars 1 dependents 303 scripts 404 downloadsRcppDE - Global Optimization by Differential Evolution in C++
An efficient C++ based implementation of the 'DEoptim' function which performs global optimization by differential evolution. Its creation was motivated by trying to see if the old approximation "easier, shorter, faster: pick any two" could in fact be extended to achieving all three goals while moving the code from plain old C to modern C++. The initial version did in fact do so, but a good part of the gain was due to an implicit code review which eliminated a few inefficiencies which have since been eliminated in 'DEoptim'.
Last updated
cpp
9.45 score 15 stars 24 dependents 52 scripts 2.1k downloadsRblpapi - R Interface to 'Bloomberg'
An R Interface to 'Bloomberg' is provided via the 'Blp API'.
Last updated
bloombergbloomberg-apircppcpp
8.97 score 175 stars 1 dependents 131 scripts 1.3k downloadsrandom - True Random Numbers using RANDOM.ORG
The true random number service provided by the RANDOM.ORG website created by Mads Haahr samples atmospheric noise via radio tuned to an unused broadcasting frequency together with a skew correction algorithm due to John von Neumann. More background is available in the included vignette based on an essay by Mads Haahr. In its current form, the package offers functions to retrieve random integers, randomized sequences and random strings.
Last updated
random-number-generators
8.93 score 10 stars 2 dependents 1.4k scripts 732 downloadsRcppSimdJson - 'Rcpp' Bindings for the 'simdjson' Header-Only Library for 'JSON' Parsing
The 'JSON' format is ubiquitous for data interchange, and the 'simdjson' library written by Daniel Lemire (and many contributors) provides a high-performance parser for these files which by relying on parallel 'SIMD' instruction manages to parse these files as faster than disk speed. See the <doi:10.48550/arXiv.1902.08318> paper for more details about 'simdjson'. This package parses 'JSON' from string, file, or remote URLs under a variety of settings.
Last updated
jsonsimdjsoncpp
8.85 score 125 stars 22 dependents 54 scripts 4.0k downloadsRcppRedis - 'Rcpp' Bindings for 'Redis' using the 'hiredis' Library
Connection to the 'Redis' (or 'Valkey') key/value store using the C-language client library 'hiredis' (included as a fallback) with 'MsgPack' encoding provided via 'RcppMsgPack' headers. It now also includes the pub/sub functions from the 'rredis' package.
Last updated
c-plus-plushiredisrcppredisredis-clientvalkeycpp
8.61 score 56 stars 1 dependents 51 scripts 363 downloadsAsioHeaders - 'Asio' C++ Header Files
'Asio' is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. It is also included in Boost but requires linking when used with Boost. Standalone it can be used header-only (provided a recent compiler). 'Asio' is written and maintained by Christopher M. Kohlhoff, and released under the 'Boost Software License', Version 1.0.
Last updated
8.56 score 13 stars 70 dependents 2 scripts 67k downloadsRcppSpdlog - R and C++ Interfaces to 'spdlog' C++ Header Library for Logging
The mature and widely-used C++ logging library 'spdlog' by Gabi Melman provides many desirable features. This package bundles these header files for easy use by R packages from both their R and C or C++ code. Explicit use via 'LinkingTo:' is also supported. Also see the 'spdl' package which enhanced this package with a consistent R and C++ interface.
Last updated
logging-libraryrcppspdlogcpp
8.45 score 18 stars 15 dependents 5 scripts 2.3k downloadsRPushbullet - R Interface to the Pushbullet Messaging Service
An R interface to the Pushbullet messaging service which provides fast and efficient notifications (and file transfer) between computers, phones and tablets. An account has to be registered at the site <https://www.pushbullet.com> site to obtain a (free) API key.
Last updated
jsonmessagingpushbullet
8.44 score 96 stars 1 dependents 111 scripts 4.8k downloadsRcppCCTZ - 'Rcpp' Bindings for the 'CCTZ' Library
'Rcpp' access to the 'CCTZ' timezone library is provided. 'CCTZ' is a C++ library for translating between absolute and civil times using the rules of a time zone. The 'CCTZ' source code, released under the Apache 2.0 License, is included in this package. See <https://github.com/google/cctz> for more details.
Last updated
c-plus-plus-11cctzdatetimedatetimesrcpptimezonetimezonescpp
8.34 score 24 stars 19 dependents 17 scripts 11k downloadsRcppCNPy - Read-Write Support for 'NumPy' Files via 'Rcpp'
The 'cnpy' library written by Carl Rogers provides read and write facilities for files created with (or for) the 'NumPy' extension for 'Python'. Vectors and matrices of numeric types can be read or written to and from files as well as compressed files. Support for integer files is available if the package has been built with as C++11 which should be the default on all platforms since the release of R 3.3.0.
Last updated
c-plus-plusnumpyzlibcpp
8.31 score 30 stars 508 scripts 1.1k downloadsRQuantLib - R Interface to the 'QuantLib' Library
The 'RQuantLib' package makes parts of 'QuantLib' accessible from R The 'QuantLib' project aims to provide a comprehensive software framework for quantitative finance. The goal is to provide a standard open source library for quantitative analysis, modeling, trading, and risk management of financial assets.
Last updated
cppquantlibcpp
8.24 score 131 stars 231 scripts 1.3k downloadsbinb - 'binb' is not 'Beamer'
A collection of 'LaTeX' styles using 'Beamer' customization for pdf-based presentation slides in 'RMarkdown'. At present it contains 'RMarkdown' adaptations of the LaTeX themes 'Metropolis' (formerly 'mtheme') theme by Matthias Vogelgesang and others (now included in 'TeXLive'), the 'IQSS' them by Ista Zahn (which is included here), and the 'Monash' theme by Rob J Hyndman. Additional (free) fonts may be needed: 'Metropolis' prefers 'Fira', and 'IQSS' requires 'Libertinus'.
Last updated
beamerbeamer-presentationbeamer-thememarkdownpdfrmarkdownrmarkdown-beamer
8.01 score 191 stars 2 dependents 2 scripts 704 downloadsRcppZiggurat - 'Rcpp' Integration of Different "Ziggurat" Normal RNG Implementations
The Ziggurat generator for normally distributed random numbers, originally proposed by Marsaglia and Tsang (2000, <doi:10.18637/jss.v005.i08>) has been improved upon a few times starting with Leong et al (2005, <doi:10.18637/jss.v012.i07>). This package provides an aggregation in order to compare different implementations in order to provide a 'faster but good enough' alternative for use with R and C++ code. See the 'zigg' package for a lighter implementation for much easier use in other packages.
Last updated
random-number-generatorsrcppzigguratgslcpp
7.96 score 14 stars 3 dependents 74 scripts 6.5k downloadsx13binary - Provide the 'x13ashtml' Seasonal Adjustment Binary
The US Census Bureau provides a seasonal adjustment program now called 'X-13ARIMA-SEATS' building on both earlier programs called X-11 and X-12 as well as the SEATS program by the Bank of Spain. The US Census Bureau offers both source and binary versions -- which this package integrates for use by other R packages.
Last updated
7.50 score 11 stars 7 dependents 19 scripts 15k downloadslinl - 'linl' is not 'Letter'
A 'LaTeX' Letter class for 'rmarkdown', using the 'pandoc-letter' template adapted for use with 'markdown'.
Last updated
lettermarkdownpandoc
7.32 score 115 stars 1 dependents 2 scripts 248 downloadstidyCpp - Tidy C++ Header-Only Definitions for Parts of the C API of R
Core parts of the C API of R are wrapped in a C++ namespace via a set of inline functions giving a tidier representation of the underlying data structures and functionality using a header-only implementation without additional dependencies.
Last updated
cpp
7.24 score 43 stars 3 dependents 603 downloadspkgKitten - Create Simple Packages Which Do not Upset R Package Checks
Provides a function kitten() which creates cute little packages which pass R package checks. This sets it apart from package.skeleton() which it calls, and which leaves imperfect files behind. As this is not exactly helpful for beginners, kitten() offers an alternative. Unit test support can be added via the 'tinytest' package (if present), and documentation-creation support can be added via 'roxygen2' (if present).
Last updated
skeleton
7.08 score 36 stars 1 dependents 7 scripts 28k downloadspinp - 'pinp' is not 'PNAS'
A 'PNAS'-alike style for 'rmarkdown', derived from the 'Proceedings of the National Academy of Sciences of the United States of America' ('PNAS') 'LaTeX' style, and adapted for use with 'markdown' and 'pandoc'.
Last updated
markdownvignette
7.06 score 154 stars 1 dependents 2 scripts 520 downloadsRcppInt64 - 'Rcpp'-Based Helper Functions to Pass 'Int64' and 'nanotime' Values Between 'R' and 'C++'
'Int64' values can be created and accessed via the 'bit64' package and its 'integer64' class which package the 'int64' representation cleverly into a 'double'. The 'nanotime' packages builds on this to support nanosecond-resolution timestamps. This packages helps conversions between 'R' and 'C++' via several helper functions provided via a single header file. A complete example client package is included as an illustration.
Last updated
cpp
6.33 score 7 stars 17 dependents 6 scripts 2.4k downloadsRcppMsgPack - 'MsgPack' C++ Header Files and Interface Functions for R
'MsgPack' header files are provided for use by R packages, along with the ability to access, create and alter 'MsgPack' objects directly from R. 'MsgPack' is an efficient binary serialization format. It lets you exchange data among multiple languages like 'JSON' but it is faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one extra byte in addition to the strings themselves. This package provides headers from the 'msgpack-c' implementation for C and C++(11) for use by R, particularly 'Rcpp'. The included 'msgpack-c' headers are licensed under the Boost Software License (Version 1.0); the code added by this package as well the R integration are licensed under the GPL (>= 2). See the files 'COPYRIGHTS' and 'AUTHORS' for a full list of copyright holders and contributors to 'msgpack-c'.
Last updated
messagepackmsgpackmsgpack-headerscpp
6.20 score 22 stars 1 dependents 16 scripts 298 downloadsRApiSerialize - R API Serialization
Access to the internal R serialization code is provided for use by other packages at the C function level by using the registration of native function mechanism. Client packages simply include a single header file RApiSerializeAPI.h provided by this package. This packages builds on the Rhpc package by Ei-ji Nakama and Junji Nakano which also includes a (partial) copy of the file src/main/serialize.c from R itself. The R Core group is the original author of the serialization code made available by this package.
Last updated
serialization
5.75 score 13 stars 7 dependents 6 scripts 4.1k downloadsRcppSMC - Rcpp Bindings for Sequential Monte Carlo
R access to the Sequential Monte Carlo Template Classes by Johansen <doi:10.18637/jss.v030.i06> is provided. At present, four additional examples have been added, and the first example from the JSS paper has been extended. Further integration and extensions are planned.
Last updated
particle-filterrcppsequantial-monte-carloopenblascpp
5.48 score 25 stars 7 scripts 578 downloadsqlcal - R Bindings to the Calendaring Functionality of 'QuantLib'
'QuantLib' bindings are provided for R using 'Rcpp' via an evolved version of the initial header-only 'Quantuccia' project offering an subset of 'QuantLib' (now maintained separately just for the calendaring subset). See the included file 'AUTHORS' for a full list of contributors to 'QuantLib' (and hence also 'Quantuccia').
Last updated
cpp
5.43 score 9 stars 50 scripts 821 downloadsxptr - Manipulating External Pointers
There is limited native support for external pointers in the R interface. This package provides some basic tools to verify, create and modify 'externalptr' objects.
Last updated
5.33 score 8 stars 1 dependents 18 scripts 266 downloadstd - Access to the 'twelvedata' Financial Data API
The 'twelvedata' REST service offers access to current and historical data on stocks, standard as well as digital 'crypto' currencies, and other financial assets covering a wide variety of course and time spans. See <https://twelvedata.com/> for details, to create an account, and to request an API key for free-but-capped access to the data.
Last updated
5.26 score 18 stars 101 scripts 209 downloadsrfoaas - R Interface to 'FOAAS'
R access to the 'FOAAS' (F... Off As A Service) web service is provided.
Last updated
5.23 score 28 stars 5 scripts 200 downloadsRcppBDT - 'Rcpp' Bindings for the Boost Date_Time Library
Access to Boost Date_Time functionality for dates, durations (both for days and date time objects), time zones, and posix time ('ptime') is provided by using 'Rcpp modules'. The posix time implementation can support high-resolution of up to nano-second precision by using 96 bits (instead of 64 with R) to present a 'ptime' object (but this needs recompilation with a #define set).
Last updated
cpp
5.18 score 18 stars 1 dependents 7 scripts 1.9k downloadsRcppAPT - 'Rcpp' Interface to the APT Package Manager
The 'APT Package Management System' provides Debian and Debian-derived Linux systems with a powerful system to resolve package dependencies. This package offers access directly from R. This can only work on a system with a suitable 'libapt-pkg-dev' installation so functionality is curtailed if such a library is not found.
Last updated
aptlibapt-pkgcpp
5.18 score 10 stars 15 scripts 225 downloadsRDieHarder - R Interface to the 'DieHarder' RNG Test Suite
The 'RDieHarder' package provides an R interface to the 'DieHarder' suite of random number generators and tests that was developed by Robert G. Brown and David Bauer, extending earlier work by George Marsaglia and others. The 'DieHarder' library code is included.
Last updated
gsl
5.04 score 11 stars 8 scripts 736 downloadsRcppExamples - Examples using 'Rcpp' to Interface R and C++
Examples for Seamless R and C++ integration The 'Rcpp' package contains a C++ library that facilitates the integration of R and C++ in various ways. This package provides some usage examples. Note that the documentation in this package currently does not cover all the features in the package. The site <https://gallery.rcpp.org> regroups a large number of examples for 'Rcpp'.
Last updated
cppcpp11examplesrcppcpp
4.99 score 49 stars 8 scripts 251 downloadsdtts - 'data.table' Time-Series
High-frequency time-series support via 'nanotime' and 'data.table'.
Last updated
cpp
4.95 score 15 stars 3 scripts 834 downloadsspdl - Easier Use of 'RcppSpdlog' Functions via Wrapper
Logging functions in 'RcppSpdlog' provide access to the logging functionality from the 'spdlog' 'C++' library. This package offers shorter convenience wrappers for the 'R' functions which match the 'C++' functions, namely via, say, 'spdl::debug()' at the debug level. The actual formatting is done by the 'fmt::format()' function from the 'fmtlib' library (that is also 'std::format()' in 'C++20' or later).
Last updated
4.86 score 4 stars 6 dependents 1 scripts 852 downloadsttdo - Extend 'tinytest' with 'diffobj' and 'tinysnapshot'
The 'tinytest' package offers a light-weight zero-dependency unit-testing framework to which this package adds support via the 'diffobj' package for 'diff'-style textual comparison of R objects, as well as via 'tinysnapshot' package for visual differences in plots.
Last updated
diffunit-testing
4.84 score 23 stars 2 scripts 280 downloadsgunsales - Statistical Analysis of Monthly Background Checks of Gun Purchases
Statistical analysis of monthly background checks of gun purchases for the New York Times story "What Drives Gun Sales: Terrorism, Obama and Calls for Restrictions" at <https://www.nytimes.com/interactive/2015/12/10/us/gun-sales-terrorism-obama-restrictions.html> is provided.
Last updated
4.80 score 1 stars 21 scripts 517 downloadsprrd - Parallel Runs of Reverse Depends
Reverse depends for a given package are queued such that multiple workers can run the reverse-dependency tests in parallel.
Last updated
hacktoberfestreverse-dependencies
4.59 score 13 stars 2 scripts 208 downloadsdang - 'Dang' Associated New Goodies
A collection of utility functions.
Last updated
cpp
4.51 score 16 stars 5 scripts 281 downloadscorels - R Binding for the 'Certifiably Optimal RulE ListS (Corels)' Learner
The 'Certifiably Optimal RulE ListS (Corels)' learner by Angelino et al described in <doi:10.48550/arXiv.1704.01701> provides interpretable decision rules with an optimality guarantee, and is made available to R with this package. See the file 'AUTHORS' for a list of copyright holders and contributors.
Last updated
gmpcpp
4.50 score 49 stars 13 scripts 266 downloadsRcppClassic - Deprecated 'classic' 'Rcpp' 'API'
The 'RcppClassic' package provides a deprecated C++ library which facilitates the integration of R and C++. New projects should use the new 'Rcpp' 'API' in the 'Rcpp' package.
Last updated
cpp
4.48 score 1 stars 1 dependents 849 downloadsRApiDatetime - R API for 'Date' and 'Datetime'
Access to the C-level R date and 'datetime' code is provided for C-level API use by other packages via registration of native functions. Client packages simply include a single header 'RApiDatetime.h' provided by this package, and also 'import' it. The R Core group is the original author of the code made available with slight modifications by this package.
Last updated
datedate-time
4.48 score 12 stars 10 scripts 252 downloadsRcppFastFloat - 'Rcpp' Bindings for the 'fast_float' Header-Only Library for Number Parsing
Converting ascii text into (floating-point) numeric values is a very common problem. The 'fast_float' header-only C++ library by Daniel Lemire does it very well and very fast at up to or over to 1 gigabyte per second as described in more detail in <doi:10.1002/spe.2984>. 'fast_float' is licensed under the Apache 2.0 license and provided here for use by other R packages via a simple 'LinkingTo:' statement.
Last updated
rcppcpp
4.32 score 21 stars 6 scripts 249 downloadscrc32c - Cyclic Redundancy Check with CPU-Specific Acceleration
Hardware-based support for 'CRC32C' cyclic redundancy checksum function is made available for 'x86_64' systems with 'SSE2' support as well as for 'arm64', and detected at build-time via 'cmake' with a software-based fallback. This functionality is exported at the 'C'-language level for use by other packages. 'CRC32C' is described in 'RFC 3270' at <https://datatracker.ietf.org/doc/html/rfc3720> and is based on 'Castagnoli et al' <doi:10.1109/26.231911>.
Last updated
cpp
4.18 score 5 stars 1 dependents 2 scripts 590 downloadsRcppNLoptExample - 'Rcpp' Package Illustrating Header-Only Access to 'NLopt'
An example package which shows use of 'NLopt' functionality from C++ via 'Rcpp' without requiring linking, and relying just on 'nloptr' thanks to the exporting API added there by Jelmer Ypma. This package is a fully functioning, updated, and expanded version of the initial example by Julien Chiquet at <https://github.com/jchiquet/RcppArmadilloNLoptExample> also containing a large earlier pull request of mine.
Last updated
cpp
4.15 score 14 stars 4 scripts 560 downloadsrcppmlpackexamples - Example Use of 'mlpack' from C++ via R
A Minimal Example Package which demonstrates 'mlpack' use via C++ Code from R.
Last updated
openblascppopenmp
4.11 score 1 stars 1 scripts 154 downloadsRcppXts - Interface the 'xts' API via 'Rcpp'
Access to some of the C level functions of the 'xts' package. In its current state, the package is mostly a proof-of-concept to support adding useful functions, and does not yet add any of its own.
Last updated
cpp
4.00 score 10 stars 3 scripts 143 downloadsRcppFastAD - 'Rcpp' Bindings to 'FastAD' Auto-Differentiation
The header-only 'C++' template library 'FastAD' for automatic differentiation <https://github.com/JamesYang007/FastAD> is provided by this package, along with a few illustrative examples that can all be called from R.
Last updated
cpp
3.81 score 13 stars 5 scripts 185 downloadsgaussfacts - The Greatest Mathematician Since Antiquity
Display a random fact about Carl Friedrich Gauss based the on collection curated by Mike Cavers via the <https://web.archive.org/web/*/gaussfacts.com> site.
Last updated
3.60 score 4 stars 4 scripts 117 downloadsrmsfact - Amazing Random Facts About the World's Greatest Hacker
Display a randomly selected quote about Richard M. Stallman based on the collection in the 'GNU Octave' function 'fact()' which was aggregated by Jordi Gutiérrez Hermoso based on the (now defunct) site stallmanfacts.com (which is accessible only via <http://archive.org>).
Last updated
3.60 score 4 stars 7 scripts 227 downloadsgettz - Get the Timezone Information
A function to retrieve the system timezone on Unix systems which has been found to find an answer when 'Sys.timezone()' has failed. It is based on an answer by Duane McCully posted on 'StackOverflow', and adapted to be callable from R. The package also builds on Windows, but just returns NULL.
Last updated
3.57 score 2 stars 1 scripts 3.7k downloadschronometre - A 'chronomètre' is a 'stopwatch'
As a 'chronomètre' is a 'stopwatch', this package offers a simple stopwatch, and in particular one that can be shared with Python (using the corresponding package of the same name available via 'PyPi') such that both interpreters operate on the same object instance and shown in the demo file, as well as in the unit tests.
Last updated
3.48 score 2 stars 1 scripts 183 downloadsciw - Watch the CRAN Incoming Directories
Directory reads and summaries are provided for one or more of the subdirectories of the <https://cran.r-project.org/incoming/> directory, and a compact summary object is returned. The package name is a contraption of 'CRAN Incoming Watcher'.
Last updated
3.30 score 2 stars 3 scripts 144 downloadsRcppKalman - 'RcppArmadillo'-Based Kalman Filtering
An 'RcppArmadillo'-based port of the Kalman filtering code in the 'EKF/UKF Toolbox for Matlab' by Simo Särkkä, Jouni Hartikainen, and Arno Solin is provided. . Note that this package is at this point still incomplete, but contains two demo functions replicating demos in 'EKF/UKF'.
Last updated
openblascpp
3.26 score 36 stars 9 scriptsRcppStreams - 'Rcpp' Integration of the 'Streamulus' 'DSEL' for Stream Processing
The 'Streamulus' (template, header-only) library by Irit Katriel (at <https://github.com/iritkatriel/streamulus>) provides a very powerful yet convenient framework for stream processing. This package connects 'Streamulus' to R by providing both the header files and all examples.
Last updated
cpp
3.23 score 17 stars 4 scripts 24 downloadsRcppMagicEnum - 'Rcpp' Bindings to 'Magic Enum' 'C++' 'Enum' Support
The header-only modern 'C++' template library 'Magic Enum' for static reflection of 'enums' (to string, from string, iteration) is provided by this package. More information about the underlying library can be found at its repository at <https://github.com/Neargye/magic_enum>.
Last updated
cpp
3.18 score 3 stars 1 scripts 178 downloadsRcppFarmHash - Interface to the Google 'FarmHash' Family of Hash Functions
The Google 'FarmHash' family of hash functions is used by the Google 'BigQuery' data warehouse via the 'FARM_FINGERPRINT' function. This package permits to calculate these hash digest fingerprints directly from R, and uses the included 'FarmHash' files written by G. Pike and copyrighted by Google, Inc.
Last updated
farmhashcpp
3.18 score 3 stars 2 scripts 198 downloadsRcppUUID - Generating Universally Unique Identificators
Using the efficient implementation in the Boost C++ library, functions are provided to generate vectors of 'Universally Unique Identifiers (UUID)' from R supporting random (version 4), name (version 5) and time (version 7) 'UUIDs'. The initial repository was at <https://gitlab.com/artemklevtsov/rcppuuid>.
Last updated
cpp
3.00 score 2 stars 3 scripts 236 downloadsRcppGetconf - 'Rcpp' Interface for Querying System Configuration Variables
The 'getconf' command-line tool provided by 'libc' allows querying of a large number of system variables. This package provides similar functionality.
Last updated
cpp
3.00 score 2 stars 2 scripts 83 downloadsrspdlite - R and C++ Interfaces to 'spdlite' C++ Header Library for Logging
The lightweight header-only C++-20 logging library 'spdlite', a lighter version of 'spdlog' and also written by Gabi Melman, provides most of the features of the larger version, and also includes 'fmt' as fallback if 'std::format' is not selected.
Last updated
cpp
2.88 score 1 stars 1 dependents 2 scriptsRcppNarrow - First Steps Around 'narrow'
Leaning on the 'narrow' package for C-level access to 'Arrow' without requiring the full weight of that package.
Last updated
cpp
2.88 score 5 stars 1 scriptsRcppGeiger - 'Rcpp' Bindings for 'Geiger' Header-Only Micro-Benchmark Framework
The 'Geiger' Header-Only C++11 Micro-Benchmarks Framework, written by David Grosss and released under the MIT license, is provided for use by R packages through lightweight integration with 'Rcpp'.
Last updated
benchmark-frameworkbenchmarkingc-plus-plusc-plus-plus-14cpp
2.60 score 4 starsldlasb - Lies, Damned Lies, and Selective Benchmarks
Correcting two very selectively chosen benchmarks in order to set a record straight.
Last updated
benchmarkingperformancercppcpp
2.60 score 8 stars 3 scriptssafy - Show the Global Environment Some Appreciation
In times as trying as these, some extra care is sorely needed for the treatment of one's global variables. A constructive suggestion was made in <https://twitter.com/Obsidiandy/status/1256667469852393474>, and this package aims to pblige.
Last updated
2.40 score 5 stars 1 scriptswinsorize - Winsorize Data
Remove outliers by means of winsorization, ie shrinking outlying observations to the border of the main part of the data. This package started from the excellent robustHD package by Andreas Alfons in order to reduce the number dependent package being pulled in. We expect to update the code over time.
Last updated
openblascpp
2.30 score 4 stars 3 scriptsccptm - Cook Country Property Tax Model
We use Cook County, IL, property tax data to model the property taxes a function of available data on properties. This analysis is an R implementation of the work described in the excellent original blog post (and associate Python notebook) by Tanya Schlusser at <http://tanyaschlusser.github.io/posts/property-tax-cook-county/>.
Last updated
2.30 score 4 stars 1 scriptsRcppAsioExample - A Simple Example of Using 'Asio' from 'R' via 'Rcpp'
The 'AsioHeader' packages brings the 'Asio' library in a header-only format to R. This package illustrates its use via a simple example, and be used as a test whether all relevant packages are correctly setup to allow compilation.
Last updated
cpp
2.00 score 2 stars 1 scriptsnaarma - Connect nanoarrow with (Rcpp)Armadillo
The nanoarrow package offers C-level functionality to work with Arrow object, along with a small amount of C++ integration. This package uses it to interact with Armadillo objects. Some auxiliary testing facility from the nanoarrow package is included here as well.
Last updated
armadilloarrowcppmlpackcpp
1.70 score 1 stars 4 scriptsRcppLongLong - Simple test package for long long interactions
Simple tests to tickle long long conversions
Last updated
cpp
1.70 score 1 starsplr - Utility Functions for 'PrairieLearn' and R
'PrairieLearn' is an online problem-driven learning system for creating homeworks and tests. This package adds some helper functions for using it along with R as we are currently doing for <https://stat430.com>.
Last updated
1.70 score 1 stars 2 scriptstlexample - Concise Summary of What the Package Does
More about what it does (maybe more than one line).
Last updated
cpp
1.00 scoresampleTestPackage - What the Package Does Using Title Case
A simple package showing different unit testing approaches.
Last updated
1.00 score 4 scriptsapollo13 - Houston, We Have a Problem
Import a number of helper functions without exposing any evil underscores.
Last updated
1.00 score 1 stars 3 scripts