Benchmarks: https://www.ritchievink.com/blog/2021/02/28/i-wrote-one-of-t...
Benchmarks: https://www.ritchievink.com/blog/2021/02/28/i-wrote-one-of-t...
And that's the killer feature of Julia. It is easier to micro-optimize Julia code than any other language, static or dynamic. Meaning if Julia is not best-in-class in a certain algorithm, it will soon.
Julia's DF library is generic and allows user defined ops and types. You can put in GPU vectors, distributed vectors, custom number types etc. Julia optimizes all this stuff.
data.frame is just a giant chunk of c (c++) code that one must interact with in very specific ways
These features aren't of interest to practicing statisticians, which the parent comment was talking about.
> data.frame is just a giant chunk of c (c++) code that one must interact with in very specific ways
I don't understand this criticism: yes, data.table has an API.
It's pretty convenient for things like uncertainty propagation and data cleaning...all things statisticians should care about.
>I don't understand this criticism: yes, data.table has an API
A relatively limited API, walled off from the rest of the language.
DataFrames.jl is very rapidly catching up and starting to surpass it. After hitting a stable v1.0 they've begun focusing on performance and those benchmarks have changed significantly over the past three months. Here's the live view: https://h2oai.github.io/db-benchmark/
I expect it to continue to improve; note that it's starting to be the fastest implementation on some of the groupby benchmarks.
1. https://discourse.julialang.org/t/release-announcements-for-...
2. https://discourse.julialang.org/t/the-state-of-dataframes-jl...
However yes, it does not beat all other packages tested in performance.