Skip to main content

A Python wrapper for the Weka data mining library.

Project description

Weka - Python wrapper for Weka classifiers

Pipeline Status

Overview

Provides a convenient wrapper for calling Weka classifiers from Python.

Installation

First install the Weka and LibSVM Java libraries. On Debian/Ubuntu this is simply:

sudo apt-get install weka libsvm-java

Then install the Python package with pip:

sudo pip install weka

Usage

Train and test a Weka classifier by instantiating the Classifier class, passing in the name of the classifier you want to use:

from weka.classifiers import Classifier
c = Classifier(name='weka.classifiers.lazy.IBk', ckargs={'-K':1})
c.train('training.arff')
predictions = c.predict('query.arff')

Alternatively, you can instantiate the classifier by calling its name directly:

from weka.classifiers import IBk
c = IBk(K=1)
c.train('training.arff')
predictions = c.predict('query.arff')

The instance contains Weka's serialized model, so the classifier can be easily pickled and unpickled like any normal Python instance:

c.save('myclassifier.pkl')
c = Classifier.load('myclassifier.pkl')
predictions = c.predict('query.arff')

Development

Tests require the Python development headers to be installed, which you can install on Ubuntu with:

sudo apt-get install python-dev python3-dev python3.4-dev

To run unittests across multiple Python versions, install:

sudo apt-get install python3.4-minimal python3.4-dev python3.5-minimal python3.5-dev

To setup a local Python virtual environment for testing, run:

./init_virtualenv.sh

To run all tests:

export TESTNAME=; tox

To run tests for a specific environment (e.g. Python 3.9):

export TESTNAME=; tox -e py39

To run a specific test:

export TESTNAME=.test_IBk; tox -e py39

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

weka-2.0.2.tar.gz (80.2 kB view details)

Uploaded Source

File details

Details for the file weka-2.0.2.tar.gz.

File metadata

  • Download URL: weka-2.0.2.tar.gz
  • Upload date:
  • Size: 80.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for weka-2.0.2.tar.gz
Algorithm Hash digest
SHA256 41bcd7cc08654cdc1c596693c28857e6045f9155e8ef5a949ae40b24e74a2ea1
MD5 de38e6295d3a2d3519628b86538368fb
BLAKE2b-256 74d3183343580dff8852f90f76a716c5c657c2bda298f06bff2a9cf0b9ed6958

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page