Live data from Hacker News

I wrote one of the fastest DataFrame libraries

ritchievink.com

61–70 of 146 posts

Re: I wrote one of the fastest DataFrame libraries

#61
post #54

[note: see more nuanced comment below] The Julia benchmark two links deep at https://github.com/h2oai/db-benchmark doesn't follow even the most basic performance tips listed at https://docs.julialang.org/en/v1/manual/performance-tips/ .

What specifically are you thinking of?

The non-const global variables stand out to me, but I'm not experienced enough tell whether that would make a large difference.

Re: I wrote one of the fastest DataFrame libraries

#62

Pretty impressed with the data.table benchmarks. The syntax is a little weird and takes getting used to but once you have the basics it’s a great tool.

I use it a lot but it really breaks the tidyverse, which makes using R actually enjoyable. Why aren’t these other libraries (not in R; I’m talking the others in the benchmark) consistently as fast as data.table? Are the programmers of data.table just that much better?

> It really breaks the tidyverse

You may want to look at tidyfst.

> Are the programmers of data.table just that much better?

Pixie dust, R's C API (and yes, they're just exceptionally good).

Re: I wrote one of the fastest DataFrame libraries

#63

If this will read a csv that has columns with mixed integers and nulls without converting all of the numbers to float by default, it will replace pandas in my life. 99% of my problems with pandas arise from ints being coerced into floats when a bull shows up.

Pass dtype = {"colX":"Int64"} for the columns that you want to read as a Nullable integer type: https://pandas.pydata.org/pandas-docs/stable/user_guide/inte...

Re: I wrote one of the fastest DataFrame libraries

#64

I've been intrigued about this library, and specifically the possibility about a Python workflow, but a fallback to rust if needed. I mean, I haven't really looked at what the interop is but should work, right? It's not going to happen for now though because the project is still immature and there's zero documentation in Python from what I can see. But it's something in keeping a close eye on, I often work with R and…

Rust projects takes longer. If memory safety is not a concern, I'd advice stick to Modern C++.

Re: I wrote one of the fastest DataFrame libraries

#65
"Polars is based on the Rust native implementation Apache Arrow. Arrow can be seen as middleware software for DBMS, query engines and DataFrame libraries. Arrow provides very cache-coherent data structures and proper missing data handling."

This is super cool. Anyone know if Pandas is also planning to adopt Arrow ?

Re: I wrote one of the fastest DataFrame libraries

#67

"Polars is based on the Rust native implementation Apache Arrow. Arrow can be seen as middleware software for DBMS, query engines and DataFrame libraries. Arrow provides very cache-coherent data structures and proper missing data handling." This is super cool. Anyone know if Pandas is also planning to adopt Arrow ?

It's on their roadmap https://pandas.pydata.org/docs/development/roadmap.html#apac...

Re: I wrote one of the fastest DataFrame libraries

#68

"Polars is based on the Rust native implementation Apache Arrow. Arrow can be seen as middleware software for DBMS, query engines and DataFrame libraries. Arrow provides very cache-coherent data structures and proper missing data handling." This is super cool. Anyone know if Pandas is also planning to adopt Arrow ?

I believe Pandas is incompatible with Arrow for a few reasons, such as their indexes and datetime types. But it's pretty easy to convert a pandas dataframe to Arrow and vice versa – I actually use this to pass data between Python & Julia.

As a side note, Wes McKinney, the creator of Pandas, is heavily involved in Arrow.

Re: I wrote one of the fastest DataFrame libraries

#70
> At the time of writing this blog, Polars is the fastest DataFrame library in the benchmark second to R’s data.table, and Polars is top 3 all tools considered

This is a very strange way to write “Polaris is the second fastest” but I guess that doesn’t grab headlines

Post reply on HN