Permalink
Browse files

Version 2.0

  • Loading branch information...
1 parent 1a585ce commit f42095192b943c2295e604df79d3626bf4c57aeb @renatopp committed Feb 13, 2014
View
@@ -0,0 +1,19 @@
+What's New on LIAC-ARFF
+=======================
+
+LIAC-ARFF 2.0
+-------------
+
+- new: ArffEncoder and ArffDecoder helpers which actually do the serialization
+ and loading of ARFF files.
+- new: UnitTest cases for all classes and functions.
+- new: Detailed exceptions for many cases.
+- fix: load, loads, dump, dumps are now simpler.
+- rem: arfftools.py and the split function.
+
+LIAC-ARFF 1.0
+-------------
+
+First commit.
+
+- new: load, loads, dump, dumps functions
View
@@ -1,32 +1,43 @@
=========
-liaf-arff
+LIAF-ARFF
=========
-The liac-arff module implements functions to read and write ARFF files in
-Python.
+The liac-arff module implements functions to read and write ARFF files in
+Python. It was created in the Connectionist Artificial Intelligence Laboratory
+(LIAC), which takes place at the Federal University of Rio Grande do Sul
+(UFRGS), in Brazil.
-Attribute Relationship File Format (`ARFF <http://weka.wikispaces.com/ARFF>`_)
-is the text format file used by Weka to store data in a database. This module
-is an ARFF file handler based on other python parser modules (such json and
-yaml).
+ARFF (Attribute-Relation File Format) is an file format specially created for
+describe datasets which are used commonly for machine learning experiments and
+softwares. This file format was created to be used in Weka, the best
+representative software for machine learning automated experiments.
-
-NOTE: You can clone the `arff-datasets <https://github.com/renatopp/arff-datasets>`_
+You can clone the `arff-datasets <https://github.com/renatopp/arff-datasets>`_
repository for a large set of ARFF files.
-
+--------
Features
--------
-- Read and Write ARFF files using python built-in structures;
-- Supports NUMERIC, REAL, INTEGER, STRING and NOMINAL attribute types;
-- Supports names with space;
-- Read and Write the description of the file;
-- MIT license;
+- Read and write ARFF files using python built-in structures, such dictionaries
+ and lists;
+- Supports the following attribute types: NUMERIC, REAL, INTEGER, STRING, and
+ NOMINAL;
+- Has an interface similar to other built-in modules such as ``json``, or
+ ``zipfile``;
+- Supports read and write the descriptions of files;
+- Supports missing values and names with spaces;
+- Supports unicode values and names;
+- Fully compatible with Python 2.6+ and Python 3.4+;
+- Under `MIT License <http://opensource.org/licenses/MIT>`_
+--------------
+How To Install
+--------------
-Install
--------
+Via pip::
+
+ $ pip install liac-arff
Via easy_install::
@@ -37,6 +48,16 @@ Manually::
$ python setup.py install
+-------------
+Documentation
+-------------
+
+For a complete description of the module, consult the official documentation at
+http://packages.python.org/liac-arff/ with mirror in
+http://inf.ufrgs.br/~rppereira/arff/index.html
+
+
+-----
Usage
-----
@@ -49,29 +70,30 @@ Which results in::
>>> data
{
- 'attributes': [
- ('outlook', ['sunny', 'overcast', 'rainy']),
- ('temperature', 'REAL'),
- ('humidity', 'REAL'),
- ('windy', ['TRUE', 'FALSE']),
- ('play', ['yes', 'no'])],
- 'data': [
- ['sunny', 85.0, 85.0, 'FALSE', 'no'],
- ['sunny', 80.0, 90.0, 'TRUE', 'no'],
- ['overcast', 83.0, 86.0, 'FALSE', 'yes'],
- ['rainy', 70.0, 96.0, 'FALSE', 'yes'],
- ['rainy', 68.0, 80.0, 'FALSE', 'yes'],
- ['rainy', 65.0, 70.0, 'TRUE', 'no'],
- ['overcast', 64.0, 65.0, 'TRUE', 'yes'],
- ['sunny', 72.0, 95.0, 'FALSE', 'no'],
- ['sunny', 69.0, 70.0, 'FALSE', 'yes'],
- ['rainy', 75.0, 80.0, 'FALSE', 'yes'],
- ['sunny', 75.0, 70.0, 'TRUE', 'yes'],
- ['overcast', 72.0, 90.0, 'TRUE', 'yes'],
- ['overcast', 81.0, 75.0, 'FALSE', 'yes'],
- ['rainy', 71.0, 91.0, 'TRUE', 'no']],
- 'description': u'',
- 'relation': 'weather'
+ u'attributes': [
+ (u'outlook', [u'sunny', u'overcast', u'rainy']),
+ (u'temperature', u'REAL'),
+ (u'humidity', u'REAL'),
+ (u'windy', [u'TRUE', u'FALSE']),
+ (u'play', [u'yes', u'no'])],
+ u'data': [
+ [u'sunny', 85.0, 85.0, u'FALSE', u'no'],
+ [u'sunny', 80.0, 90.0, u'TRUE', u'no'],
+ [u'overcast', 83.0, 86.0, u'FALSE', u'yes'],
+ [u'rainy', 70.0, 96.0, u'FALSE', u'yes'],
+ [u'rainy', 68.0, 80.0, u'FALSE', u'yes'],
+ [u'rainy', 65.0, 70.0, u'TRUE', u'no'],
+ [u'overcast', 64.0, 65.0, u'TRUE', u'yes'],
+ [u'sunny', 72.0, 95.0, u'FALSE', u'no'],
+ [u'sunny', 69.0, 70.0, u'FALSE', u'yes'],
+ [u'rainy', 75.0, 80.0, u'FALSE', u'yes'],
+ [u'sunny', 75.0, 70.0, u'TRUE', u'yes'],
+ [u'overcast', 72.0, 90.0, u'TRUE', u'yes'],
+ [u'overcast', 81.0, 75.0, u'FALSE', u'yes'],
+ [u'rainy', 71.0, 91.0, u'TRUE', u'no']
+ ],
+ u'description': u'',
+ u'relation': u'weather'
}
You can write an ARFF file with this structure::
@@ -112,7 +134,7 @@ Contributors
- `Tarek Amr (gr33ndata) <https://github.com/gr33ndata>`_
- `Simon (M3t0r) <https://github.com/M3t0r>`_
- `Gonzalo Almeida (flecox) <https://github.com/flecox>`_
-
+- `André Nordbø (AndyNor) <http://andynor.net>`_
Project Page
------------
Oops, something went wrong.

1 comment on commit f420951

Please sign in to comment.