PredictionIO Python SDK
=======================


Installation
============

To install the module from PyPI, you may

    $ pip install predictionio

or

    $ easy_install predictionio

If you have cloned the repository and want to install directly from there,
do the following in the root directory of the repository:

    $ python setup.py install

This will install the "predictionio" module to your Python distribution.


Usage
=====

To use predictionio in your Python script,

    >>> import predictionio


Documentation
=============

The latest documentation is located at http://pythonhosted.org/PredictionIO/

If you want to build a local copy, please install Sphinx
(http://sphinx-doc.org/install.html).

To generate documentation,

    % cd docs
    % make html

To view the generated documentation, go to docs/build/html/index.html.


SUPPORT
=======

http://predictionio.apache.org/support/


Issue Tracker
-------------

https://issues.apache.org/jira/projects/PIO

If you are unsure whether a behavior is an issue, bringing it up in the forum is highly encouraged.
