Skip to content
Machine Learning & Data Mining with JRuby
Ruby Shell
Branch: develop
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


Gem Version Build Status Codacy Badge Open Source Helpers

Machine Learning & Data Mining with JRuby based on the Weka Java library.


Add this line to your application's Gemfile:

gem 'weka'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install weka


Use Weka's Machine Learning and Data Mining algorithms by requiring the gem:

require 'weka'

The weka gem tries to carry over the namespaces defined in Weka and enhances some interfaces in order to allow a more Ruby-ish programming style when using the Weka library.

The idea behind keeping the namespaces is, that you can also use the Weka documentation for looking up functionality and classes.

Please refer to the gem’s Wiki for detailed information about how to use weka with JRuby and some examplary code snippets.


  1. Check out the repo with git clone
  2. Set a local environment variable export JARS_VENDOR=false. This will prevent compiling the jars into your repo’s /lib directory and will load them from your local maven repository instead. See the jar-dependencies README for more information.
  3. Run bin/setup or bundle install to install the dependencies.

Then, run rake spec to run the tests. You can also run bin/console or rake irb for an interactive prompt that will allow you to experiment.


Bug reports and pull requests are welcome on GitHub at This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant Code of Conduct.

For development we use the git branching model described by nvie.

Here’s how to contribute:

  1. Fork it (
  2. Create your feature branch (git checkout -b feature/my-new-feature develop)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin feature/my-new-feature)
  5. Create a new Pull Request

Please try to add RSpec tests along with your new feature. This will ensure that your code does not break existing functionality and that your feature is working as expected.

We use Rubocop for code style recommendations. Please make sure your contributions comply with the project’s Rubocop config.


The original ideas for wrapping Weka in JRuby come from @arrigonialberto86 and his ruby-band gem. Great thanks!


The gem is available as open source under the terms of the MIT License.

You can’t perform that action at this time.