daru
red_amber
Our great sponsors
daru | red_amber | |
---|---|---|
3 | 1 | |
1,027 | 61 | |
0.2% | - | |
1.6 | 8.5 | |
9 months ago | 3 months ago | |
Ruby | Ruby | |
BSD 1-Clause License | MIT License |
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.
daru
-
2,900 page Manual about Pandas [pdf]
For dataframes libraries in Ruby, there are Rover[0] and Daru[1]:
[0]:https://github.com/ankane/rover
[1]:https://github.com/SciRuby/daru
-
On DataFrame datatype in Ruby (2016)
Me neither! Don't know how or why it suddenly appeared on the HN main :)
Just to provide a bit of the personal context: this article caused creator of DaRu (Sameer Deshmukh) to contact me and propose to work on DaRu together, and so I did (see @zverok here: https://github.com/SciRuby/daru/graphs/contributors). I also was, for some time, SciRuby/DaRu's mentor for Google Summer of Code (and, IIRC, it was my initial idea that daru-view grew from).
Also, since that article, an independent dataframe library https://github.com/ankane/rover was created by Andrew Kane, handling some of API and implementation in a cleaner way.
That being said, I am not sure that DaRu, or Rover (or "dataframe" idea in general) has enough visibility in the Ruby community. It is mostly thought as "some special scientific thing", while I believe in 2021 it should be seen as one of the necessary everyday high-level datatypes.
That's what I'd focus this article on if I'd written it today.
red_amber
-
Tried polars in Ruby
So while the Arrow C binding for the Ruby language is relatively well-developed, polars-df is not an Arrow C binding, but a binding to Polars implemented in Rust. magnus is used for the connection between Ruby and Rust. In fact, there is also a Ruby data frame that uses the Arrow binding, which is called RedAmber. But we are not talking about that now.
What are some alternatives?
Rgl - RGL is a framework for graph data structures and algorithms in Ruby.
rover - Simple, powerful data frames for Ruby
polars-cheat-sheet - Polars cheat sheet
pairing_heap - Performant priority queue in pure Ruby with support for changing priority using pairing heap data structure
Ruby Units - A unit handling library for ruby
magnus - Ruby bindings for Rust. Write Ruby extension gems in Rust, or call Ruby from Rust.
krangl - krangl is a {K}otlin DSL for data w{rangl}ing
polars - Dataframes powered by a multithreaded, vectorized query engine, written in Rust
daru-view - daru-view is for easy and interactive plotting in web application & IRuby notebook. daru-view is a plugin gem to the existing daru gem.
polars-ruby - Blazingly fast DataFrames for Ruby