A Python wrapper for the Weka data mining library.
Project description
Weka - Python wrapper for Weka classifiers
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41bcd7cc08654cdc1c596693c28857e6045f9155e8ef5a949ae40b24e74a2ea1 |
|
MD5 | de38e6295d3a2d3519628b86538368fb |
|
BLAKE2b-256 | 74d3183343580dff8852f90f76a716c5c657c2bda298f06bff2a9cf0b9ed6958 |