Numo::NArray - New NArray class library for Ruby/Numo (NUmerical MOdule)
Numo::NArray is an Numerical N-dimensional Array class for fast processing and easy manipulation of multi-dimensional numerical data, similar to numpy.ndaray. This project is the successor to Ruby/NArray.
under development
Documentation
All documents are primitive.
- Numo::NArray API Doc
- Numo::NArray vs numpy
- Numo::NArray vs ndarray
- Numo::NArray Overview (in Japanese)
Related Projects
- Numo::Linalg - Linear Algebra library with LAPACK.
- Numo::GSL - Ruby interface for GSL (GNU Scientific Library).
- Numo::FFTW - Ruby/Numo interface to FFTW (A Discrete Fourier Transform library.
- Numo::FFTE - Ruby interface for FFTE (A Fast Fourier Transform library with radix-2,3,5).
- Numo::Gnuplot - Simple and easy-to-use Gnuplot interface.
Installation
Requirement
Ruby ver 2.1 and later.
Ubuntu, Debian, Bash on Windows
apt install -y git ruby gcc ruby-dev rake make
gem install specific_install
gem specific_install https://github.com/ruby-numo/numo-narray.git
Quick start
An example
[1] pry(main)> require "numo/narray"
=> true
[2] pry(main)> a = Numo::DFloat.new(3,5).seq
=> Numo::DFloat#shape=[3,5]
[[0, 1, 2, 3, 4],
[5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]]
[3] pry(main)> a.shape
=> [3, 5]
[4] pry(main)> a.ndim
=> 2
[5] pry(main)> a.class
=> Numo::DFloat
[6] pry(main)> a.size
=> 15
For more examples, check out this narray version of 100 numpy exercises (and the IRuby Notebook).
Development
Build
ruby setup.rb
Run tests
bundle install
bundle exec rake test
Tips: You may run tests defined in a specified line as:
bundle exec ruby test/bit_test.rb --location 27