data.table - Extension of `data.frame`
Fast aggregation of large data (e.g. 100GB in RAM), fast ordered joins, fast add/modify/delete of columns by group using no copies at all, list columns, friendly and fast character-separated-value read/write. Offers a natural and flexible syntax, for faster development.
Last updated 3 days ago
23.43 score 3.6k stars 4.5k dependents 226k scripts 887k downloadsRcpp - 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 3 days ago
c-plus-plusc-plus-plus-11c-plus-plus-14c-plus-plus-17c-plus-plus-20rcppcpp
22.41 score 747 stars 13k dependents 10k scripts 1.2M downloadslubridate - Make Dealing with Dates a Little Easier
Functions to work with date-times and time-spans: fast and user friendly parsing of date-time data, extraction and updating of components of a date-time (years, months, days, hours, minutes, and seconds), algebraic manipulation on date-time and time-span objects. The 'lubridate' package has a consistent and memorable syntax that makes working with dates easy and fun.
Last updated 16 days ago
datedate-time
21.09 score 736 stars 1.9k dependents 138k scripts 807k downloadsigraph - Network Analysis and Visualization
Routines for simple graphs and network analysis. It can handle large graphs very well and provides functions for generating random and regular graphs, graph visualization, centrality methods and much more.
Last updated 7 days ago
complex-networksgraph-algorithmsgraph-theorymathematicsnetwork-analysisnetwork-graphfortranlibxml2glpkopenblascpp
21.06 score 572 stars 1.9k dependents 30k scripts 485k downloadsmagrittr - A Forward-Pipe Operator for R
Provides a mechanism for chaining commands with a new forward-pipe operator, %>%. This operator will forward a value, or the result of an expression, into the next function call/expression. There is flexible support for the type of right-hand side expressions. For more information, see package vignette. To quote Rene Magritte, "Ceci n'est pas un pipe."
Last updated 2 years ago
pipe
21.04 score 959 stars 13k dependents 78k scripts 1.3M downloadsarrow - Integration to 'Apache' 'Arrow'
'Apache' 'Arrow' <https://arrow.apache.org/> is a cross-language development platform for in-memory data. It specifies a standardized language-independent columnar memory format for flat and hierarchical data, organized for efficient analytic operations on modern hardware. This package provides an interface to the 'Arrow C++' library.
Last updated 1 days ago
arrowcurlopensslcpp
19.31 score 15k stars 74 dependents 12k scripts 337k downloadsvctrs - Vector Helpers
Defines new notions of prototype and size that are used to provide tools for consistent and well-founded type-coercion and size-recycling, and are in turn connected to ideas of type- and size-stability useful for analysing function interfaces.
Last updated 2 months ago
s3-vectors
19.12 score 290 stars 13k dependents 896 scripts 1.6M downloadsmatrixStats - Functions that Apply to Rows and Columns of Matrices (and to Vectors)
High-performing functions operating on rows and columns of matrices, e.g. col / rowMedians(), col / rowRanks(), and col / rowSds(). Functions optimized per data type and for subsetted calculations such that both memory usage and processing time is minimized. There are also optimized vector-based methods, e.g. binMeans(), madDiff() and weightedMedian().
Last updated 1 months ago
matrixperformancevector
18.56 score 206 stars 2.2k dependents 20k scripts 226k downloadsxts - eXtensible Time Series
Provide for uniform handling of R's different time-based data classes by extending zoo, maximizing native format information preservation and allowing for user level customization and extension, while simplifying cross-class interoperability.
Last updated 1 months ago
ctime-series
18.51 score 219 stars 632 dependents 11k scripts 368k downloadsstringi - Fast and Portable Character String Processing Facilities
A collection of character string/text/natural language processing tools for pattern searching (e.g., with 'Java'-like regular expressions or the 'Unicode' collation algorithm), random string generation, case mapping, string transliteration, concatenation, sorting, padding, wrapping, Unicode normalisation, date-time formatting and parsing, and many more. They are fast, consistent, convenient, and - thanks to 'ICU' (International Components for Unicode) - portable across all locales and platforms. Documentation about 'stringi' is provided via its website at <https://stringi.gagolewski.com/> and the paper by Gagolewski (2022, <doi:10.18637/jss.v103.i02>).
Last updated 6 months ago
icuicu4cnatural-language-processingnlpregexregexpstring-manipulationstringistringrtexttext-processingtidy-dataunicodecpp
18.22 score 305 stars 8.3k dependents 11k scripts 929k downloadsstars - Spatiotemporal Arrays, Raster and Vector Data Cubes
Reading, manipulating, writing and plotting spatiotemporal arrays (raster and vector data cubes) in 'R', using 'GDAL' bindings provided by 'sf', and 'NetCDF' bindings by 'ncmeta' and 'RNetCDF'.
Last updated 14 days ago
rastersatellite-imagesspatial
18.21 score 567 stars 127 dependents 6.9k scripts 49k downloadsvroom - Read and Write Rectangular Text Data Quickly
The goal of 'vroom' is to read and write data (like 'csv', 'tsv' and 'fwf') quickly. When reading it uses a quick initial indexing step, then reads the values lazily , so only the data you actually use needs to be read. The writer formats the data in parallel and writes to disk asynchronously from formatting.
Last updated 4 months ago
csvcsv-parserfixed-width-texttsvtsv-parsercpp
17.83 score 623 stars 2.0k dependents 5.2k scripts 706k downloadscpp11 - A C++11 Interface for R's C Interface
Provides a header only, C++11 interface to R's C interface. Compared to other approaches 'cpp11' strives to be safe against long jumps from the C API as well as C++ exceptions, conform to normal R function semantics and supports interaction with 'ALTREP' vectors.
Last updated 22 days ago
cppcpp11
17.65 score 205 stars 8.4k dependents 107 scripts 1.1M downloadsterra - Spatial Data Analysis
Methods for spatial data analysis with vector (points, lines, polygons) and raster (grid) data. Methods for vector data include geometric operations such as intersect and buffer. Raster methods include local, focal, global, zonal and geometric operations. The predict and interpolate methods facilitate the use of regression type (interpolation, machine learning) models for spatial prediction, including with satellite remote sensing data. Processing of very large files is supported. See the manual and tutorials on <https://rspatial.org/> to get started. 'terra' replaces the 'raster' package ('terra' can do more, and it is faster and easier to use).
Last updated 14 hours ago
geospatialrasterspatialvectorprojgdalgeoscpp
17.51 score 547 stars 819 dependents 17k scripts 177k downloadscollapse - Advanced and Fast Data Transformation
A C/C++ based package for advanced data transformation and statistical computing in R that is extremely fast, class-agnostic, robust and programmer friendly. Core functionality includes a rich set of S3 generic grouped and weighted statistical functions for vectors, matrices and data frames, which provide efficient low-level vectorizations, OpenMP multithreading, and skip missing values by default. These are integrated with fast grouping and ordering algorithms (also callable from C), and efficient data manipulation functions. The package also provides a flexible and rigorous approach to time series and panel data in R. It further includes fast functions for common statistical procedures, detailed (grouped, weighted) summary statistics, powerful tools to work with nested data, fast data object conversions, functions for memory efficient R programming, and helpers to effectively deal with variable labels, attributes, and missing data. It is well integrated with base R classes, 'dplyr'/'tibble', 'data.table', 'sf', 'units', 'plm' (panel-series and data frames), and 'xts'/'zoo'.
Last updated 15 hours ago
data-aggregationdata-analysisdata-manipulationdata-processingdata-sciencedata-transformationeconometricshigh-performancepanel-datascientific-computingstatisticstime-seriesweightedweightscppopenmp
16.54 score 666 stars 93 dependents 772 scripts 33k downloadsdtplyr - Data Table Back-End for 'dplyr'
Provides a data.table backend for 'dplyr'. The goal of 'dtplyr' is to allow you to write 'dplyr' code that is automatically translated to the equivalent, but usually much faster, data.table code.
Last updated 4 months ago
datatabledplyr
16.29 score 670 stars 142 dependents 2.5k scripts 556k downloadsstringdist - Approximate String Matching, Fuzzy Text Search, and String Distance Functions
Implements an approximate string matching version of R's native 'match' function. Also offers fuzzy text search based on various string distance measures. Can calculate various string distances based on edits (Damerau-Levenshtein, Hamming, Levenshtein, optimal sting alignment), qgrams (q- gram, cosine, jaccard distance) or heuristic metrics (Jaro, Jaro-Winkler). An implementation of soundex is provided as well. Distances can be computed between character vectors while taking proper care of encoding or between integer vectors representing generic sequences. This package is built for speed and runs in parallel by using 'openMP'. An API for C or C++ is exposed as well. Reference: MPJ van der Loo (2014) <doi:10.32614/RJ-2014-011>.
Last updated 15 days ago
openmp
15.27 score 322 stars 150 dependents 1.9k scripts 44k downloadsfixest - Fast Fixed-Effects Estimations
Fast and user-friendly estimation of econometric models with multiple fixed-effects. Includes ordinary least squares (OLS), generalized linear models (GLM) and the negative binomial. The core of the package is based on optimized parallel C++ code, scaling especially well for large data sets. The method to obtain the fixed-effects coefficients is based on Berge (2018) <https://github.com/lrberge/fixest/blob/master/_DOCS/FENmlm_paper.pdf>. Further provides tools to export and view the results of several estimations with intuitive design to cluster the standard-errors.
Last updated 4 months ago
cppopenmp
14.80 score 383 stars 25 dependents 4.1k scripts 18k 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 5 days ago
boostc-plus-plus-11conversionscpp11datedatetimeposixctrcppcpp
14.07 score 162 stars 96 dependents 1.3k scripts 125k downloadssnakecase - Convert Strings into any Case
A consistent, flexible and easy to use tool to parse and convert strings into cases like snake or camel among others.
Last updated 1 years ago
camelcasecaseconversionpascalcasesnake-case
14.00 score 147 stars 279 dependents 704 scripts 286k downloadsfastmap - Fast Data Structures
Fast implementation of data structures, including a key-value store, stack, and queue. Environments are commonly used as key-value stores in R, but every time a new key is used, it is added to R's global symbol table, causing a small amount of memory leakage. This can be problematic in cases where many different keys are used. Fastmap avoids this memory leak issue by implementing the map using data structures in C++.
Last updated 8 months ago
cpp
13.95 score 133 stars 5.4k dependents 86 scripts 1.1M downloadsclock - Date-Time Types and Tools
Provides a comprehensive library for date-time manipulations using a new family of orthogonal date-time classes (durations, time points, zoned-times, and calendars) that partition responsibilities so that the complexities of time zones are only considered when they are really needed. Capabilities include: date-time parsing, formatting, arithmetic, extraction and updating of components, and rounding.
Last updated 4 months ago
cpp
13.81 score 104 stars 386 dependents 272 scripts 164k downloadss2 - Spherical Geometry Operators Using the S2 Geometry Library
Provides R bindings for Google's s2 library for geometric calculations on the sphere. High-performance constructors and exporters provide high compatibility with existing spatial packages, transformers construct new geometries from existing geometries, predicates provide a means to select geometries based on spatial relationships, and accessors extract information about geometries.
Last updated 3 months ago
opensslcpp
13.68 score 73 stars 1.1k dependents 193 scripts 317k downloadsdqrng - Fast Pseudo Random Number Generators
Several fast random number generators are provided as C++ header only libraries: The PCG family by O'Neill (2014 <https://www.cs.hmc.edu/tr/hmc-cs-2014-0905.pdf>) as well as the Xoroshiro / Xoshiro family by Blackman and Vigna (2021 <doi:10.1145/3460772>). In addition fast functions for generating random numbers according to a uniform, normal and exponential distribution are included. The latter two use the Ziggurat algorithm originally proposed by Marsaglia and Tsang (2000, <doi:10.18637/jss.v005.i08>). The fast sampling methods support unweighted sampling both with and without replacement. These functions are exported to R and as a C++ interface and are enabled for use with the default 64 bit generator from the PCG family, Xoroshiro128+/++/** and Xoshiro256+/++/** as well as the 64 bit version of the 20 rounds Threefry engine (Salmon et al., 2011, <doi:10.1145/2063384.2063405>) as provided by the package 'sitmo'.
Last updated 4 months ago
randomrandom-distributionsrandom-generationrandom-samplingrngcpp
13.12 score 42 stars 175 dependents 168 scripts 35k 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 2 months ago
fortranrcpp
13.00 score 43 stars 317 dependents 580 scripts 60k downloadsqs - Quick Serialization of R Objects
Provides functions for quickly writing and reading any R object to and from disk.
Last updated 3 months ago
compressiondata-storageencodingserializationlibzstdlz4cpp
12.95 score 403 stars 48 dependents 2.5k scripts 16k downloadsfst - Lightning Fast Serialization of Data Frames
Multithreaded serialization of compressed data frames using the 'fst' format. The 'fst' format allows for full random access of stored data and a wide range of compression settings using the LZ4 and ZSTD compressors.
Last updated 3 months ago
compressiondata-framedata-storagecpp
12.94 score 620 stars 51 dependents 1.8k scripts 8.8k downloadstimechange - Efficient Manipulation of Date-Times
Efficient routines for manipulation of date-time objects while accounting for time-zones and daylight saving times. The package includes utilities for updating of date-time components (year, month, day etc.), modification of time-zones, rounding of date-times, period addition and subtraction etc. Parts of the 'CCTZ' source code, released under the Apache 2.0 License, are included in this package. See <https://github.com/google/cctz> for more details.
Last updated 11 months ago
ceilingdate-timeperiodroundingtimetime-zonesupdatecpp
12.33 score 31 stars 1.9k dependents 63 scripts 644k downloadsRfast - A Collection of Efficient and Extremely Fast R Functions
A collection of fast (utility) functions for data analysis. Column and row wise means, medians, variances, minimums, maximums, many t, F and G-square tests, many regressions (normal, logistic, Poisson), are some of the many fast functions. References: a) Tsagris M., Papadakis M. (2018). Taking R to its limits: 70+ tips. PeerJ Preprints 6:e26605v1 <doi:10.7287/peerj.preprints.26605v1>. b) Tsagris M. and Papadakis M. (2018). Forward regression in R: from the extreme slow to the extreme fast. Journal of Data Science, 16(4): 771--780. <doi:10.6339/JDS.201810_16(4).00006>. c) Chatzipantsiou C., Dimitriadis M., Papadakis M. and Tsagris M. (2020). Extremely Efficient Permutation and Bootstrap Hypothesis Tests Using Hypothesis Tests Using R. Journal of Modern Applied Statistical Methods, 18(2), eP2898. <doi:10.48550/arXiv.1806.10947>.
Last updated 11 months ago
openblascppopenmp
12.27 score 145 stars 159 dependents 1.2k scripts 15k downloadsexactextractr - Fast Extraction from Raster Datasets using Polygons
Quickly and accurately summarizes raster values over polygonal areas ("zonal statistics").
Last updated 4 months ago
gisrasterrcppgeoscpp
12.06 score 281 stars 14 dependents 1.5k scripts 7.4k downloadsmirai - Minimalist Async Evaluation Framework for R
Designed for simplicity, a 'mirai' evaluates an R expression asynchronously in a parallel process, locally or distributed over the network, with the result automatically available upon completion. Modern networking and concurrency built on 'nanonext' and 'NNG' (Nanomsg Next Gen) ensure reliable and efficient scheduling, over fast inter-process communications or TCP/IP secured by TLS. Advantages include being inherently queued thus handling many more tasks than available processes, no storage on the file system, support for otherwise non-exportable reference objects, an event-driven promises implementation, and built-in asynchronous parallel map.
Last updated 21 days ago
asynchronous-tasksconcurrencydistributed-computinghigh-performance-computingparallel-programmingpromises
11.58 score 195 stars 7 dependents 93 scripts 5.8k downloadsJuliaCall - Seamless Integration Between R and 'Julia'
Provides an R interface to 'Julia', which is a high-level, high-performance dynamic programming language for numerical computing, see <https://julialang.org/> for more information. It provides a high-level interface as well as a low-level interface. Using the high level interface, you could call any 'Julia' function just like any R function with automatic type conversion. Using the low level interface, you could deal with C-level SEXP directly while enjoying the convenience of using a high-level programming language like 'Julia'.
Last updated 19 days ago
juliacpp
11.42 score 269 stars 8 dependents 396 scripts 43k downloadstidytable - Tidy Interface to 'data.table'
A tidy interface to 'data.table', giving users the speed of 'data.table' while using tidyverse-like syntax.
Last updated 15 days ago
11.27 score 452 stars 9 dependents 540 scripts 3.0k downloadsgeodist - Fast, Dependency-Free Geodesic Distance Calculations
Dependency-free, ultra fast calculation of geodesic distances. Includes the reference nanometre-accuracy geodesic distances of Karney (2013) <doi:10.1007/s00190-012-0578-z>, as used by the 'sf' package, as well as Haversine and Vincenty distances. Default distance measure is the "Mapbox cheap ruler" which is generally more accurate than Haversine or Vincenty for distances out to a few hundred kilometres, and is considerably faster. The main function accepts one or two inputs in almost any generic rectangular form, and returns either matrices of pairwise distances, or vectors of sequential distances.
Last updated 28 days ago
11.22 score 95 stars 32 dependents 212 scripts 2.8k 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 2 months ago
datetimedatetimesnanosecond-resolutionnanosecondscpp
10.79 score 54 stars 16 dependents 135 scripts 6.4k downloadsfastmatch - Fast 'match()' Function
Package providing a fast match() replacement for cases that require repeated look-ups. It is slightly faster that R's built-in match() function on first match against a table, but extremely fast on any subsequent lookup as it keeps the hash table in memory.
Last updated 6 days ago
9.98 score 18 stars 357 dependents 244 scripts 51k downloadsstringfish - Alt String Implementation
Provides an extendable, performant and multithreaded 'alt-string' implementation backed by 'C++' vectors and strings.
Last updated 2 months ago
pcre2cpp
9.95 score 64 stars 52 dependents 14 scripts 11k downloadsparallelDist - Parallel Distance Matrix Computation using Multiple Threads
A fast parallelized alternative to R's native 'dist' function to calculate distance matrices for continuous, binary, and multi-dimensional input matrices, which supports a broad variety of 41 predefined distance functions from the 'stats', 'proxy' and 'dtw' R packages, as well as user- defined functions written in C++. For ease of use, the 'parDist' function extends the signature of the 'dist' function and uses the same parameter naming conventions as distance methods of existing R packages. The package is mainly implemented in C++ and leverages the 'RcppParallel' package to parallelize the distance computations with the help of the 'TinyThread' library. Furthermore, the 'Armadillo' linear algebra library is used for optimized matrix operations during distance calculations. The curiously recurring template pattern (CRTP) technique is applied to avoid virtual functions, which improves the Dynamic Time Warping calculations while the implementation stays flexible enough to support different DTW step patterns and normalization methods.
Last updated 3 years ago
data-sciencedistance-computationsmatricesopenblascpp
9.84 score 50 stars 13 dependents 430 scripts 2.1k downloadstidyfst - Tidy Verbs for Fast Data Manipulation
A toolkit of tidy data manipulation verbs with 'data.table' as the backend. Combining the merits of syntax elegance from 'dplyr' and computing performance from 'data.table', 'tidyfst' intends to provide users with state-of-the-art data manipulation tools with least pain. This package is an extension of 'data.table'. While enjoying a tidy syntax, it also wraps combinations of efficient functions to facilitate frequently-used data operations.
Last updated 3 months ago
9.72 score 96 stars 3 dependents 97 scripts 1.4k downloadsroll - Rolling and Expanding Statistics
Fast and efficient computation of rolling and expanding statistics for time-series data.
Last updated 2 months ago
algorithmsrcppstatisticsopenblascppopenmp
9.67 score 116 stars 10 dependents 307 scripts 4.8k downloadsrextendr - Call Rust Code from R using the 'extendr' Crate
Provides functions to compile and load Rust code from R, similar to how 'Rcpp' or 'cpp11' allow easy interfacing with C++ code. Also provides helper functions to create R packages that use Rust code. Under the hood, the Rust crate 'extendr' is used to do all the heavy lifting.
Last updated 10 days ago
9.45 score 201 stars 61 scripts 263 downloadsmaditr - Fast Data Aggregation, Modification, and Filtering with Pipes and 'data.table'
Provides pipe-style interface for 'data.table'. Package preserves all 'data.table' features without significant impact on performance. 'let' and 'take' functions are simplified interfaces for most common data manipulation tasks. For example, you can write 'take(mtcars, mean(mpg), by = am)' for aggregation or 'let(mtcars, hp_wt = hp/wt, hp_wt_mpg = hp_wt/mpg)' for modification. Use 'take_if/let_if' for conditional aggregation/modification. Additionally there are some conveniences such as automatic 'data.frame' conversion to 'data.table'.
Last updated 2 months ago
data-tablemagrittrpipes
9.18 score 61 stars 7 dependents 222 scripts 4.4k downloadskit - Data Manipulation Functions Implemented in C
Basic functions, implemented in C, for large data manipulation. Fast vectorised ifelse()/nested if()/switch() functions, psum()/pprod() functions equivalent to pmin()/pmax() plus others which are missing from base R. Most of these functions are callable at C level.
Last updated 3 months ago
openmp
9.11 score 58 stars 5 dependents 87 scripts 2.4k downloadscoop - Co-Operation: Fast Covariance, Correlation, and Cosine Similarity Operations
Fast implementations of the co-operations: covariance, correlation, and cosine similarity. The implementations are fast and memory-efficient and their use is resolved automatically based on the input data, handled by R's S3 methods. Full descriptions of the algorithms and benchmarks are available in the package vignettes.
Last updated 3 years ago
openblasopenmp
8.87 score 35 stars 15 dependents 214 scripts 1.1k downloadsfasttime - Fast Utility Function for Time Parsing and Conversion
Fast functions for timestamp manipulation that avoid system calls and take shortcuts to facilitate operations on very large data.
Last updated 3 years ago
8.63 score 41 stars 10 dependents 354 scripts 20k downloadsrrapply - Revisiting Base Rapply
The minimal 'rrapply'-package contains a single function rrapply(), providing an extended implementation of 'R'-base rapply() by allowing to recursively apply a function to elements of a nested list based on a general condition function and including the possibility to prune or aggregate nested list elements from the result. In addition, special arguments can be supplied to access the name, location, parents and siblings in the nested list of the element under evaluation. The rrapply() function builds upon rapply()'s native 'C' implementation and requires no other package dependencies.
Last updated 6 months ago
listrapplyrecursion
8.45 score 56 stars 13 dependents 65 scripts 2.0k downloadsfastverse - A Suite of High-Performance Packages for Statistics and Data Manipulation
Easy installation, loading and management, of high-performance packages for statistical computing and data manipulation in R. The core 'fastverse' consists of 4 packages: 'data.table', 'collapse', 'kit' and 'magrittr', that jointly only depend on 'Rcpp'. The 'fastverse' can be freely and permanently extended with additional packages, both globally or for individual projects. Separate package verses can also be created. Fast packages for many common tasks such as time series, dates and times, strings, spatial data, statistics, data serialization, larger-than-memory processing, and compilation of R code are listed in the README file: <https://github.com/fastverse/fastverse#suggested-extensions>.
Last updated 3 months ago
ccppdata-aggregationdata-manipulationdata-sciencedata-transformationhigh-performancelow-dependencypanel-datastatistical-computingtime-seriesweights
8.41 score 255 stars 160 scripts 1.4k downloadstinyplot - Lightweight Extension of the Base R Graphics System
Lightweight extension of the base R graphics system, with support for automatic legends, facets, themes, and various other enhancements.
Last updated 10 days ago
8.31 score 266 stars 1 dependents 39 scripts 309 downloadsJuliaConnectoR - A Functionally Oriented Interface for Integrating 'Julia' with R
Allows to import functions and whole packages from 'Julia' in R. Imported 'Julia' functions can directly be called as R functions. Data structures can be translated between 'Julia' and R. More details can also be found in the corresponding article <doi:10.18637/jss.v101.i06>.
Last updated 3 months ago
interoperabilityjulia
8.18 score 103 stars 11 dependents 89 scripts 743 downloadsRfast2 - A Collection of Efficient and Extremely Fast R Functions II
A collection of fast statistical and utility functions for data analysis. Functions for regression, maximum likelihood, column-wise statistics and many more have been included. C++ has been utilized to speed up the functions. References: Tsagris M., Papadakis M. (2018). Taking R to its limits: 70+ tips. PeerJ Preprints 6:e26605v1 <doi:10.7287/peerj.preprints.26605v1>.
Last updated 10 months ago
openblascppopenmp
7.92 score 38 stars 23 dependents 70 scripts 3.0k downloadsgeos - Open Source Geometry Engine ('GEOS') R API
Provides an R API to the Open Source Geometry Engine ('GEOS') library (<https://libgeos.org/>) and a vector format with which to efficiently store 'GEOS' geometries. High-performance functions to extract information from, calculate relationships between, and transform geometries are provided. Finally, facilities to import and export geometry vectors to other spatial formats are provided.
Last updated 10 months ago
cpp
7.83 score 62 stars 8 dependents 98 scripts 1.2k downloadsmatrixTests - Fast Statistical Hypothesis Tests on Rows and Columns of Matrices
Functions to perform fast statistical hypothesis tests on rows/columns of matrices. The main goals are: 1) speed via vectorization, 2) output that is detailed and easy to use, 3) compatibility with tests implemented in R (like those available in the 'stats' package).
Last updated 1 years ago
anovafasthypothesis-testingmatrixrowst-testwilcoxon-test
7.65 score 36 stars 8 dependents 272 scripts 1.9k downloadstidyfast - Fast Tidying of Data
Tidying functions built on 'data.table' to provide quick and efficient data manipulation with minimal overhead.
Last updated 9 months ago
cpp
7.28 score 187 stars 101 scripts 618 downloadscppRouting - Algorithms for Routing and Solving the Traffic Assignment Problem
Calculation of distances, shortest paths and isochrones on weighted graphs using several variants of Dijkstra algorithm. Proposed algorithms are unidirectional Dijkstra (Dijkstra, E. W. (1959) <doi:10.1007/BF01386390>), bidirectional Dijkstra (Goldberg, Andrew & Fonseca F. Werneck, Renato (2005) <https://archive.siam.org/meetings/alenex05/papers/03agoldberg.pdf>), A* search (P. E. Hart, N. J. Nilsson et B. Raphael (1968) <doi:10.1109/TSSC.1968.300136>), new bidirectional A* (Pijls & Post (2009) <https://repub.eur.nl/pub/16100/ei2009-10.pdf>), Contraction hierarchies (R. Geisberger, P. Sanders, D. Schultes and D. Delling (2008) <doi:10.1007/978-3-540-68552-4_24>), PHAST (D. Delling, A.Goldberg, A. Nowatzyk, R. Werneck (2011) <doi:10.1016/j.jpdc.2012.02.007>). Algorithms for solving the traffic assignment problem are All-or-Nothing assignment, Method of Successive Averages, Frank-Wolfe algorithm (M. Fukushima (1984) <doi:10.1016/0191-2615(84)90029-8>), Conjugate and Bi-Conjugate Frank-Wolfe algorithms (M. Mitradjieva, P. O. Lindberg (2012) <doi:10.1287/trsc.1120.0409>), Algorithm-B (R. B. Dial (2006) <doi:10.1016/j.trb.2006.02.008>).
Last updated 6 months ago
algorithmalgorithm-bbidirectional-a-star-algorithmc-plus-pluscontraction-hierarchiesdijkstra-algorithmdistancefrank-wolfeisochronesparallel-computingrcppshortest-pathstraffic-assignmentcpp
7.25 score 110 stars 3 dependents 36 scripts 586 downloadsast2ast - Translates an R Function to a C++ Function
Enable translation of a tiny subset of R to C++. The user has to define a R function which gets translated. For a full list of possible functions check the documentation. After translation an R function is returned which is a shallow wrapper around the C++ code. Alternatively an external pointer to the C++ function is returned to the user. The intention of the package is to generate fast functions which can be used as ode-system or during optimization.
Last updated 14 days ago
abstract-syntax-treecc-plus-plusexpression-templatematrixrcpptranspilervectorcpp
6.91 score 34 stars 2 dependents 11 scripts 276 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 1 months ago
cpp
6.77 score 39 stars 2 dependents 307 downloadshutilscpp - Miscellaneous Functions in C++
Provides utility functions that are simply, frequently used, but may require higher performance that what can be obtained from base R. Incidentally provides support for 'reverse geocoding', such as matching a point with its nearest neighbour in another array. Used as a complement to package 'hutils' by sacrificing compilation or installation time for higher running speeds. The name is a portmanteau of the author and 'Rcpp'.
Last updated 27 days ago
openmp
6.67 score 10 stars 2 dependents 111 scripts 2.0k downloadsdggridR - Discrete Global Grids
Spatial analyses involving binning require that every bin have the same area, but this is impossible using a rectangular grid laid over the Earth or over any projection of the Earth. Discrete global grids use hexagons, triangles, and diamonds to overcome this issue, overlaying the Earth with equally-sized bins. This package provides utilities for working with discrete global grids, along with utilities to aid in plotting such data.
Last updated 3 months ago
cpp
6.60 score 3 stars 1 dependents 370 scripts 514 downloadsfastmatrix - Fast Computation of some Matrices Useful in Statistics
Small set of functions to fast computation of some matrices and operations useful in statistics and econometrics. Currently, there are functions for efficient computation of duplication, commutation and symmetrizer matrices with minimal storage requirements. Some commonly used matrix decompositions (LU and LDL), basic matrix operations (for instance, Hadamard, Kronecker products and the Sherman-Morrison formula) and iterative solvers for linear systems are also available. In addition, the package includes a number of common statistical procedures such as the sweep operator, weighted mean and covariance matrix using an online algorithm, linear regression (using Cholesky, QR, SVD, sweep operator and conjugate gradients methods), ridge regression (with optimal selection of the ridge parameter considering several procedures), omnibus tests for univariate normality, functions to compute the multivariate skewness, kurtosis, the Mahalanobis distance (checking the positive defineteness), and the Wilson-Hilferty transformation of gamma variables. Furthermore, the package provides interfaces to C code callable by another C code from other R packages.
Last updated 11 months ago
commutation-matrixjarque-bera-testldl-factorizationlu-factorizationmatrix-api-for-r-packagesmatrix-normsmodified-choleskyols-regressionpower-methodridge-regressionsherman-morrisonstatisticssweep-operatorsymmetrizer-matrixfortranopenblas
6.38 score 19 stars 11 dependents 37 scripts 2.1k downloadstidyft - Fast and Memory Efficient Data Operations in Tidy Syntax
Tidy syntax for 'data.table', using modification by reference whenever possible. This toolkit is designed for big data analysis in high-performance desktop or laptop computers. The syntax of the package is similar or identical to 'tidyverse'. It is user friendly, memory efficient and time saving. For more information, check its ancestor package 'tidyfst'.
Last updated 3 months ago
6.24 score 34 stars 34 scripts 389 downloadstable.express - Build 'data.table' Expressions with Data Manipulation Verbs
A specialization of 'dplyr' data manipulation verbs that parse and build expressions which are ultimately evaluated by 'data.table', letting it handle all optimizations. A set of additional verbs is also provided to facilitate some common operations on a subset of the data.
Last updated 2 years ago
5.81 score 65 stars 8 scripts 351 downloadsXRJulia - Structured Interface to Julia
A Julia interface structured according to the general form described in package 'XR' and in the book "Extending R".
Last updated 6 years ago
4.87 score 33 stars 1 dependents 15 scripts 624 downloadsarmacmp - Translate R Linear Algebra Code to Armadillo C++
Compile linear algebra R code to C++ using the Armadillo Template Library. The package further supports mathematical optimization purely in C++.
Last updated 3 years ago
armadillo-libraryc-plus-plusexperimentallinear-algebraoptimization
3.96 score 95 stars 19 scriptsr2c - Fast Iterated Statistic Computation in R
Compiles a subset of R into machine code so that expressions composed with that subset can be applied repeatedly on varying data without interpreter overhead.
Last updated 10 months ago
3.86 score 86 stars 17 scripts