- Moves all the heavy computation to C++ using Armadillo and it exports the results to R. Previously, there were multiple data copies between R and C++ that added overhead to the computations.
- The previous versions returned MX by default, now it has to be specified.
- Adds code to extract the fixed effects with
felm
objects.
- Uses an O(n log(n)) algorithm to compute the Kendall correlation for the pseudo-R2 in the Poisson model.
- Using
arma::field
consistently instead ofstd::vector<std::vector<>>
for indices. - Linear algebra changes, such as using
arma::inv
instead of solvingarma::qr
for the inverse. - Replaces multiple for loops with dedicated Armadillo functions.
- Avoids for loops in the C++ code, and instead uses Armadillo's functions.
- O(n) computations in C++ access data directly by using pointers.
- Fixes notes from tidyselect regarding the use of
all_of()
. - The C++ code follows a more consistent style.
- The GH-Actions do not test gcc 4.8 anymore.
- Ungroups the data to avoid issues with the model matrix
- Uses R's C API efficiently to add a bit more of memory optimizations
- Uses Mat consistently for all matrix operations (avoids vectors)
- Reduces memory footprint ~45% by moving some computation to Armadillo's side
- Includes pseudo R2 (same as Stata) for Poisson models
- Initial CRAN submission.