S7
tidytable
S7 | tidytable | |
---|---|---|
6 | 26 | |
436 | 461 | |
1.8% | 0.9% | |
9.3 | 7.7 | |
4 months ago | about 2 months ago | |
R | R | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
S7
- Will they get it right this time?
-
Tidyverse 2.0.0
https://adv-r.hadley.nz/oo.html
"There are multiple OOP systems to choose from. In this book, I’ll focus on the three that I believe are most important: S3, R6, and S4. S3 and S4 are provided by base R. R6 is provided by the R6 package, and is similar to the Reference Classes, or RC for short, from base R.
"There is disagreement about the relative importance of the OOP systems. I think S3 is most important, followed by R6, then S4. Others believe that S4 is most important, followed by RC, and that S3 should be avoided. This means that different R communities use different systems."
https://rconsortium.github.io/OOP-WG/
"The S7 package is a new OOP system designed to be a successor to S3 and S4."
-
Is python necessary to learn machine learning?
Even if RStudio & the Tidyverse have mostly been promoting a functional programming style in R, it has full support for OOP (see R6 or R7 for more modern implementations of it). Let's not even mention the excellent Stan ecosystem for Probabilistic programming / Bayesian modeling, or Bioconductor, the biggest repository of bioinformatics packages & tools of any language.
-
Why is OOP in R so messy?
Not sure if you or others have missed it, as the link from the readme is dead, but the proposal section of that repo is informative of the current state of things: https://github.com/RConsortium/OOP-WG/blob/master/proposal/proposal.org
tidytable
- Tidyverse 2.0.0
-
fuzzyjoin - "Error in which(m) : argument to 'which' is not logical"
If you need speed, you should consider using dtplyr (or tidytable), or even dbplyr with duckdb.
-
tidytable v0.10.0 is now on CRAN - use tidyverse-like syntax with data.table speed
What do you think of this instead?
-
Offering several functions to create the same object in my package
Here's an example - I use this in a package I've built called tidytable. Here is the as_tidytable() function I use that uses method dispatch.
-
Dplyr performance issues (Late 2022)
If you're having performance issues with dplyr you can also try out tidytable
-
R Dialects Broke Me
I’d say tidytable is a better option these days as it supports more functions. Although I think dtplyr has improved on this front recently, but still lags. The author of tidytable contributes to dtplyr as well.
-
Why is mlr3 so under-marketed?
I know you said it 'feels much faster' which isn't exactly a data oriented comparison, but tidymodels performs very well. You can see one of the dplyr functions as step_* in tidymodels, for example mutate vs. step_mutate under recipes library. The author of tidytable, which uses data.table, had some revisions due to this conversation, just as an example.
-
Why is {dplyr} so huge, and are there any alternatives or a {dplyr} 'lite' that I can use for the basic mutate, group_by, summarize, etc?
Tidytable is what you might be looking for: https://markfairbanks.github.io/tidytable/, this will require a bit of refactoring (e.g group-bys happen as arguments in summarise/mutate). You'll get data.table like speed in a very compact & complete package.
-
Programming with R {dplyr}
People can also use tidytable and keep the same workflow they're already used to 😄
- tidytable v0.8.1 is on CRAN - it also comes with a new logo! Need data.table speed with tidyverse syntax? Check out tidytable.
What are some alternatives?
py-shiny - Shiny for Python
dtplyr - Data table backend for dplyr
AlgebraOfGraphics.jl - An algebraic spin on grammar-of-graphics data visualization in Julia. Powered by the Makie.jl plotting ecosystem.
tidypolars - Tidy interface to polars
stan - Stan development repository. The master branch contains the current release. The develop branch contains the latest stable development. See the Developer Process Wiki for details.
Tidier.jl - Meta-package for data analysis in Julia, modeled after the R tidyverse.