Movatterモバイル変換


[0]ホーム

URL:


Dirk Eddelbuettel

Brief Overview

Rcpp and related Projects

A fair number of recent projects involve theRcpp package for seamless R and C++integration, and several related packages.

TheRcpp website has more aboutRcpp, and theRcpp Gallerypresents a number of worked examples.

RcppArmadillo,RcppEigen andRcppGSL extend, respectively, to theArmadillo, Eigen and GSL frameworks. Most of these packages were atleast initially authored jointly by the Rcpp Core team.

Several few smaller and sometimes still incomplete packages use Rcppto extend to other interesting package or libraries.

A few examples areRcppAnnoy (fastNearest Neighbours classifier),RcppAPT(interfacing APT on Debian/Ubuntu/…),RcppBDT (Boost DateTime access),RcppCCTZ (time-zone library),RcppCNPy (read/write NumPy files),RcppDate (modern date library),RcppDE(differential evolution optmizations),RcppMagicEnum (enum support),RcppFastAD (fast automaticdifferentiation),RcppFarmHash(hasher used by BigQuery),RcppFastFloat (fast characterconversion),RcppGetconf (systemconfiguration access),RcppInt64(int64 variables),RcppKalman(Kalman Filter),rcppmlpackexample (mlpack C++via R),RcppMsgPack (Dateserialization / transfer),RcppNLoptExample (NLopt viaRcpp),RcppRedis (faster Redisread/write access),RcppSimdJson(fastest JSON parser)RcppSMC(Sequential Monte Carlo / Particle Filter),RcppSpdlog (modern logging library),RcppStreams (Event Stream Processing),RcppTOML (TOML Configuration FileReader),RcppUUID (UUID Generation),RcppXts (xts access at C level), andRcppZiggurat (faster NormalRNGs).

Applications includeanytime foreasier time and date conversion,nanotime for nanosecond resolution (usingRcppCCTZ andRcppDate), andqlcal for QuantLib Calendaring, anddtts building onnanotime (anddata.table).

Last but not leastRInside uses Rcppto embed R in a very easy-to-use C++ class for deployment in otherprograms.

Also, along list of (all)packages (on CRAN) using Rcpp is available.

Other Meta Projects

I maintainr-cifor portable continuous integration across different CI providers.

Ther2u projectsoffers 23,000 CRAN binaries (plus 500 BioC ones) for Ubuntu LTSreleases.Fast. Easy. Reliable. Pick All Three.

Other non-R Projects

duckdb-mlpackbring themlpack C++ machine learninglibrary to theduckdb analytical SQLdatabase

Other Projects

littler lets R be used in commad-linescripting, pipes and more.

binb,linl,pinp, andtintare all using Markdown to produce pdf (nicer than Beamer) slides,letters, (PNAS-alike) papers or (Tufte) handouts (pdf and html).

Rblpapi connects R to Bloomberg API(provided you have Bloomberg).

RQuantLib is another relativelylarge project connecting R to QuantLib.

BH provides Boost C++ headers for use byR; AsioHeaders does the same for Asio.

digest provides hash sums of Robjects.

inline makes it easy to inline C, C++,or Fortran code alongside R.

RPushbullet interfaces thePushBullet notificationservice.

RApiSerialize provides theC-level API for R object serialization;RApiDatetime does the same for somedate/time functions.

pkgKitten makes creating andwriting R packages a breeze.

drat supports lightweight packagerepositories.

rfoaas interfaces the excellent FOAASservice.

random provides true (hardware) RNGdraws.

rmsfact andgaussfacts offer some (lighthearted)quotes in thefortune() tradition.

RDieHarder tests RNGs.

RPostgreSQL connects R toPostgres (now maintained by Tomoaki Nishiyama).

spdl provides a consistent R and C++wrapper for logging withspdlog.

td accessestwelvedata APIs over REST.

crc32c provides a hardware-acceleratedcrc32c implementation with a software fallback.

tinythemes provides a lightweightrepackaging of ggplot2 themes.

ciw offers a quick and concise view ofthe ‘incoming’ directory at CRAN.

ulid provides universally uniquelexicographically-sortable identifiers.

zigg offers a lightweightzero-dependency implementation of the very fast Ziggurat PRNGs.

xptr supports working with externalpointers.

Older (non-R) projects include the Perl-basedBeanCounter (andSMTM) as well asFinance::YahooQuote.

Reverse Chronological List

In (approximately) reverse chronological order:

xptr
Manipulating external pointers [Projectpage] [CRAN][GitHub].
rcppmlpackexamples
mlpack C++ code via from C++ from an R package [Project page] [CRAN][GitHub].
RcppUUID
Universally Unique Identifiers (UUIDs) version 4, 5 and 7 [Project page] [CRAN] [GitHub].
zigg
Lightweight zero-dependency implementation of very fast Ziggurat PRNGs[Project page] [CRAN] [GitHub].
RcppMagicEnum
Interface tomagic_enum headerlibrary for enum support [Projectpage] [CRAN] [GitHub].
ulid
Universally Unique Lexicographically-Sortable Identifiers [Project page] [CRAN] [GitHub].
ciw
CRAN Incoming Watcher [Project page] [CRAN] [GitHub].
tinythemes
Lightweight repackahing of ggplot2 themes [Project page] [CRAN] [GitHub].
RcppInt64
RcppInt64: Bindings for Passing integer64 To And From C++ [Project page] [CRAN] [GitHub].
crc32c
crc32c: R Bindings for the CRC32C Library++ [Project page] [CRAN] [GitHub].
RcppFastAD
Interface toFastADheader library for automatic differentiation [Project page] [CRAN] [GitHub].
spdl
Consistent R and C++ wrapper for logging withspdlog [Project page] [CRAN] [GitHub].
dtts
Time-series functionality based on nanotime and data.table [Project page] [CRAN] [GitHub].
qlcal
QuantLib Calendering for R [Projectpage] [CRAN][GitHub].
RcppFarmHash
Rcpp Bindings for the FarmHash Family of Hash Functions by Google [Project page] [CRAN] [GitHub].
td
Access totwelvedata [Project page] [CRAN] [GitHub].
RcppFastFloat
Rcpp Bindings for the fastfloat Header Library [Project page] [CRAN] [GitHub].
tidyCpp
header-files with for tidier C++ wrapper around the C API for R [Project page] [CRAN] [GitHub].
RcppSpdlog
modern C++ logging header library for R [Project page] [CRAN] [GitHub].
chshli
check shared libraries [Project page] [GitHub].
RcppDate
date C++ header library for R [Projectpage] [CRAN] [GitHub].
RcppSimdJson
Rcpp Bindings for the simdjson Header Library [Project page] [CRAN] [GitHub].
corels
R Bindings for the ‘Certifiably Optimal RulE ListS (Corels)’ Learner [Project page] [CRAN] [GitHub].
minm
minm is not meta: One way to get several RMarkdown-using packages [Project page] [GitHub].
ttdo
Extend tinytest with diffobj [Project page][CRAN] [GitHub].
dang
A collection of utility functions for R [Project page] [CRAN] [GitHub].
RcppNloptExample
Rcpp Example for accessing NLopt [Project page] [CRAN][GitHub].
binb
Binb Is Not Beamer: Spiffier Presentation Slides [Project page] [CRAN] [GitHub].
RcppClassicExamples
Examples using (deprecated) ‘RcppClassic’ to Interface R and C++ [CRAN][GitHub].
prrd
Parallel Running [of] Reverse Depends [Projectpage] [CRAN][GitHub].
linl
Linl Is Not Letter: Markdown-based LaTeX Letter Template [Project page] [CRAN] [GitHub].
pinp
Pinp Is Not PNAS: Two-Column PDF Template [Project page] [CRAN] [GitHub].
rcppquantuccia
Rcpp bindings for Quantuccia [Project page] [CRAN] [GitHub].
nanotime
Nanosecond Time Resolution for R [Projectpage] [CRAN] [GitHub].
tint
Tint Is Not Tufte [Project page] [CRAN] [GitHub].
gettz
Get System Timezone [Project page] [CRAN [GitHub].
anytime
Convertany (sensible) input into Date or Time, without aformat [Project page] [CRAN] [GitHub].
gaussfacts
The Greatest Mathematician since Antiquity [Project page] [CRAN] [GitHub]
rmsfact
Amazing Random Facts About the World’s Greatest Hacker [Project Page] [CRAN] [GitHub]
RcppGetconf
Rcpp read access to POSIX system configuration [Project page] [CRAN] [GitHub].
RcppMsgPack
MsgPack C++ Header Files and Interface Functions for R [Project page] [CRAN] [GitHub]
asioheaders
Asio Headers for R [Project page][CRAN] [GitHub].
RcppCCTZ
Rcpp interface forR to theCCTZ library [Project page] [CRAN] [GitHub].
Rblpapi
Rcpp interface forR toBloomberg (provided you have Bloomberg) [Project page] [CRAN] [GitHub].
RApiDatetime
Access to the C-level API forRdate/time functions. [Project page][CRAN][GitHub].
RcppTOML
Rcpp interface forR toTOML configuration files[Project page] [CRAN] [GitHub].
RcppAPT
Rcpp interface forR to the APTPackaging Tool onDebian andderivatives [Project page] [CRAN] [GitHub].
drat
DratR Archive Template toeasily create lightweight repositories [Projectpage] [CRAN][GitHub].
RcppStreams
R interface to the Streamuluslibrary for Event Stream Processing. [Project page] [CRAN] [GitHub].
RcppAnnoy
R interface to the Annoyapproximate nearest neighbour classifier. [Project page] [CRAN] [GitHub].
pkgKitten
Easier creation ofR packagesthat purr. [Project page] [CRAN] [GitHub] [Debian].
RPushBullet
R interface to the excellentPushBullet notifications API andservice. [Project page] [CRAN] [GitHub].
RApiSerialize
Access to the C-level API forRobject serialization. [Projectpage] [CRAN] [GitHub].
rfoaas
R interface to the RESTfulFOAAS service. [Project page] [CRAN] [GitHub].
RcppZiggurat
Faster Normal RNGs forR via theZiggurat algorithm. [Project page][CRAN][GitHub].
RcppRedis
R interface toRedis. [Project page] [CRAN] [GitHub].
RcppKalman
RcppArmadillo port of theEKF/UKFtoolbox for Matlab [Project page][GitHub]
RcppCNPy
ProvidesR with read/writeaccess to NumPy data files. [Projectpage] [CRAN] [GitHub].
BH
Access (large parts of)Boosttemplated C++ header files in your R packages. [Project page] [CRAN] [GitHub].
RcppXts
C++ level access toxts via Rcpp. [Project page] [CRAN] [GitHub].
RcppSMC
Using the SMTC (Sequential Monte Carlo Template) classes by Johansenfrom R via Rcpp. [Project page] [CRAN] [GitHub].
RcppDE
Provides a more compact alternate C++ implementation of DEoptimDifferential Evolution optimisation package. [Project page] [CRAN] [GitHub].
RcppBDT
Interface fromR to theBoostDate.Time library. [Project page][CRAN] [GitHub].
RcppClassic
Provides the otherwise deprecatedclassic Rcpp API for packagesthat have not updated to the newer API. [Project page] [CRAN] [GitHub].
inline
Inline C, C++ and Fortran from R [Projectpage] [CRAN] [GitHub] [Debian].
RcppGSL
Bindings fromR to the vector andmatrix classes of theGNUGSL. [Project page] [CRAN] [GitHub].
RcppEigen
Bindings fromR to theEigenlibrary. [Project page] [CRAN] [GitHub] [Debian].
RcppExamples
Regroups a number of examples forRcpp. [Project page] [CRAN] [GitHub].
RcppArmadillo
Bindings fromR to ConradSanderson’s excellent templatedArmadillo library. [Project page] [CRAN] [GitHub] [Debian].
RInside
C++ classes to embedR in yourC++ applications permitting you to eaily pass data and commands to R.[Project page] [CRAN] [GitHub].
RProtoBuf
Bindings forR to useGoogleProtocol Buffers for serialization and much more. [Project page] [CRAN] [GitHub].
Rcpp
SeamlessR and C++ integration.[Project page] [CRAN] [GitHub] [Debian].
RDieHarder
R interface to theDieHardertests for RNGs.
littler
A scripting front-end forR towrite simple ‘shebang’-line scripts, or quick command-line expressions.[Project page] [CRAN] [GitHub] [Debian].
random
R package providing access totrue (i.e. non-deterministic) random numbers fromrandom.org. [Project page] [CRAN] [GitHub].
digest
R package to createhashdigests of arbitrary R objects. [Projectpage] [CRAN] [GitHub] [Debian].
RQuantLib
AR interface with theQuantLib library. [Project page] [CRAN] [GitHub] [Debian].

Really Old Projects

RPostgreSQL
R interface toPostgreSQL, initially a part ofGSoC2008. Now maintained by Tomoaki Nishiyama. [CRAN] [GitHub].
Quantian
A directly bootable and self-configuring Linux system on a single dvd(project no longer active).[Project page]][Web site].
BeanCounter
A stock portfolio performance toolkit: download, store (in SQL) andanalyse stock market data. [Projectpage] [CPAN][Google Code] [Debian].
SMTM
A highly configurable Perl/Tk stock ticker and performance display forstocks. [Project page] [CPAN] [Debian].
Finance::YahooQuote
A Perl module to download stock (and other) quotes fromYahoo! Finance, originally writtenby Dj Padzensky; mainted by me since 2002. [Project page] [CPAN] [Debian].
Mersenne Twister RNG for GNUOctave
C++ code for another RNG forGNUOctave using theMersenne TwisterMT19937. [Project page].
PostgreSQL for Octave
C++ code to interface thePostgres SQL database directly fromGNU Octave. [Project page].

Other Pages

Debian
MyDebian GNU/Linux page with informationabout the several dozen packages I maintain.
GitHub
My mainGitHub page.

Initially created: Tue Jul 27 20:25:25 EDT 1999
Last modified: Wed Dec 03 07:44:00 CST 2025


[8]
ページ先頭

©2009-2025 Movatter.jp