crystal-libraries-needed icon indicating copy to clipboard operation
crystal-libraries-needed copied to clipboard

Apache Arrow Support

Open dsisnero opened this issue 6 years ago • 1 comments

Apache Arrow is a cross-language development platform for in-memory data. It is going to be the standard format for all the dataframe type libraries

dsisnero avatar May 01 '19 22:05 dsisnero

I have started work on this: https://github.com/crystal-data/arrow.cr. I plan to make it fairly similar to the Ruby implementation, which also uses GObject Introspection. Here is a mini example with basically no code written:

b = Arrow::ArrayBuilder.build([1, 2, 3])
s = Arrow::Int32Array.cast(b)

puts s[-1] # => 3
puts s.to_a(Int32) # => [1, 2, 3]

Fair warning, I'm mostly just doing this to add it as a backend to Num.cr, so there might be some non-numeric features left out, always looking for contributors if anyone is interested.

christopherzimmerman avatar Nov 10 '21 00:11 christopherzimmerman