问题
I was doing the mathematical calculations with python or octave because of availability of really nice functions and libraries at hand. But recently I gained interest in ruby and I wonder if there is an equivalent in Ruby to the numpy, scipy in Python for scientific programming. Specifically, I'm looking something that I can draw plots as in matplotlib and do mathematical, algebraic calculations quickly as in numpy and scipy.
回答1:
Linear algebra is at the heart of most large-scale scientific computing. LAPACK is the gold standard for linear algebra libraries, first written in FORTRAN.
There's a port to Ruby here. Once you have that, the rest is incidental, but there are also plotting routines in Ruby.
回答2:
SciRuby is working on this. NMatrix and Statsample are probably the most useful SciRuby gems for linear algebra and statistics, respectively, though you might also find these useful: distribution, minimization, and integration.
As far as visualization and plotting goes, check out Rubyvis (a Ruby port of Protovis). Nyaplot is also coming along nicely.
If you need something more stable than NMatrix, there's always NArray.
I'm also surprised no one has mentioned Ruby/GSL. There's also a fork which supports NMatrix over in the SciRuby github account.
Full disclosure: I'm an admin for SciRuby, but I don't make any money off of it. =)
回答3:
I compared and gave examples for a number of different plotting libraries that you can use from Ruby. I hope that helps with the second part of your question.
来源:https://stackoverflow.com/questions/4775013/scientific-programming-with-ruby