duckdf VS RCall.jl

Compare duckdf vs RCall.jl and see what are their differences.

duckdf

🦆 SQL for R dataframes, with ducks (by phillc73)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
duckdf RCall.jl
3 8
41 311
- 0.6%
0.0 5.5
4 months ago about 1 month ago
R Julia
GNU General Public License v3.0 only GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

duckdf

Posts with mentions or reviews of duckdf. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-10.
  • DuckDB – in-process SQL OLAP database management system
    4 projects | news.ycombinator.com | 10 Feb 2023
    Quite a while ago, when duckdb was just a duckling, I wrote an R package that supported direct manipulation of R dataframes using SQL.[1] duckdb was the engine for this.

    The approach was never as fast as data.table but did approach the speed of dplyr for more complex queries.

    Life had other things in store for me and I haven’t touched this library for a while now.

    At the time there was no Julia connector for duckdb, but now that there is, I’d like to try this approach in that language.

    [1] https://github.com/phillc73/duckdf

  • ClickHouse as an alternative to Elasticsearch for log storage and analysis
    13 projects | news.ycombinator.com | 2 Mar 2021
    Yeah, I agree sqldf is quite slow. Fair point.

    As you've seen, duckdb registers an "R data frame as a virtual table." I'm not sure what they mean by "yet" either.

    Of course it is possible to write an R dataframe to an on-disk duckdb table, if that's what you want to do.

    There are some simple benchmarks on the bottom of the duckdf README[1]. Essentially I found for basic SQL SELECT queries, dplyr is quicker, but for much more complex queries, the duckdf/duckdb combination performs better.

    If you really want speed of course, just use data.table.

    [1] https://github.com/phillc73/duckdf

  • Julia 1.6: what has changed since Julia 1.0?
    9 projects | news.ycombinator.com | 14 Feb 2021
    That's a really good point that I'd not really thought about. I'd never really considered the difference between calling just functions versus macros.

    Thinking about Query.jl and DataFramesMeta.jl, and I am for sure not an expert in either, I can't specifically speak to your `head` example, but other base functions can be combined with macros. For example, see the LINQ examples from DataFramesMeta.jl[1] where `mean` is being used. Or again the LINQ style examples in Query.jl[2], where `descending` is used in the first example, or `length` later in the Grouping examples.

    Is that the kind of thing you meant?

    For whatever reason, with the way my brain is wired, the LINQ style of query just works for me. I have never directly used LINQ, but do have some SQL experience. In fact, I wrote some dinky little wrapper functions[3] around duckdb[4] so I could directly query R dataframes and datatables with SQL using that backend, rather than sqldf[5].

    [1] https://juliadata.github.io/DataFramesMeta.jl/stable/#@linq-...

    [2] https://www.queryverse.org/Query.jl/stable/linqquerycommands...

    [3] https://github.com/phillc73/duckdf

    [4] https://duckdb.org/

    [5] https://cran.r-project.org/web/packages/sqldf/index.html

RCall.jl

Posts with mentions or reviews of RCall.jl. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-04.
  • Makie, a modern and fast plotting library for Julia
    3 projects | news.ycombinator.com | 4 Jul 2023
    I don't use it personally, but RCall.jl[1] is the main R interop package in Julia. You could call libraries that have no equivalent in Julia using that and write your own analyses in Julia instead.

    [1] https://github.com/JuliaInterop/RCall.jl

  • Making Python 100x faster with less than 100 lines of Rust
    21 projects | news.ycombinator.com | 29 Mar 2023
    You can have your cake and eat it with the likes of

    * PythonCall.jl - https://github.com/cjdoris/PythonCall.jl

    * NodeCall.jl - https://github.com/sunoru/NodeCall.j

    * RCall.jl - https://github.com/JuliaInterop/RCall.jl

    I tend to use Julia for most things and then just dip into another language’s ecosystem if I can’t find something to do the job and it’s too complex to build myself

  • Interoperability in Julia
    3 projects | dev.to | 23 Jan 2022
    To inter-operate Julia with the R language, the RCall package is used. Run the following commands on the Julia REPL
  • Convert Random Forest from Julia to R
    2 projects | /r/Julia | 10 Jun 2021
    https://github.com/JuliaInterop/RCall.jl may help
  • I'm considering Rust, Go, or Julia for my next language and I'd like to hear your thoughts on these
    12 projects | /r/rust | 16 Apr 2021
    If you need to bindings to your existing R packages then Julia is the way. Check out RCall.jl
  • translate R code to Julia code
    1 project | /r/Julia | 26 Mar 2021
    I have no experience with R, but maybe this will be of use: https://github.com/JuliaInterop/RCall.jl
  • Julia 1.6: what has changed since Julia 1.0?
    9 projects | news.ycombinator.com | 14 Feb 2021
    You can use RCall to use R from Julia: https://github.com/JuliaInterop/RCall.jl
  • Julia Update: Adoption Keeps Climbing; Is It a Python Challenger?
    17 projects | news.ycombinator.com | 18 Jan 2021
    I worked with R and Python during the last 3 years but learning and dabbling with Julia since 0.6. Since the availability of [PyCall.jl] and [RCall.jl], the transition to Julia can already be easier for Python/R users.

    I agree that most of the time data wrangling is super confortable in R due to the syntax flexibility exploited by the big packages (tidyverse/data.table/etc). At the same time, Julia and R share a bigger heritage from Lisp influence that with Python, because R is also a Lisp-ish language (see [Advanced R, Metaprogramming]). My main grip from the R ecosystem is not that most of the perfomance sensitive packages are written in C/C++/Fortran but are written so deeply interconnect with the R environment that porting them to Julia that provide also an easy and good interface to C/C++/Fortran (and more see [Julia Interop] repo) seems impossible for some of them.

    I also think that Julia reach to broader scientific programming public than R, where it overlaps with Python sometimes but provides the Matlab/Octave public with an better alternative. I don't expected to see all the habits from those communities merge into Julia ecosystem. On the other side, I think that Julia bigger reach will avoid to fall into the "base" vs "tidyverse" vs "something else in-between" that R is now.

    [PyCall.jl]: https://github.com/JuliaPy/PyCall.jl

    [RCall.jl]: https://github.com/JuliaInterop/RCall.jl

    [Julia Interop]: https://github.com/JuliaInterop

    [Advanced R, Metaprogramming] by Hadley Wickham: https://adv-r.hadley.nz/metaprogramming.html

What are some alternatives?

When comparing duckdf and RCall.jl you can also consider the following projects:

tidyquery - Query R data frames with SQL

Makie.jl - Interactive data visualizations and plotting in Julia

Typesense - Open Source alternative to Algolia + Pinecone and an Easier-to-Use alternative to ElasticSearch ⚡ 🔍 ✨ Fast, typo tolerant, in-memory fuzzy Search Engine for building delightful search experiences

org-mode - This is a MIRROR only, do not send PR.

julia - The Julia Programming Language

Chain.jl - A Julia package for piping a value through a series of transformation expressions using a more convenient syntax than Julia's native piping functionality.

loki - Like Prometheus, but for logs.

Revise.jl - Automatically update function definitions in a running Julia session

cmssw - CMS Offline Software

MeiliSearch - A lightning-fast search API that fits effortlessly into your apps, websites, and workflow

PyCall.jl - Package to call Python functions from the Julia language