Skip to main content

Library that easily allows to create machine learning progress for more unexperiencied programmers.

Project description

MLForAll: Easy ML projects from scratch

PyPI Latest Release Package Status License Code style: black

Description

mlforall is an open-source library aimed to developers that are beginners in the data analysis area but want to build powerful machine learning projects from the very beginning. The package offers a reliable, easy to use and well documented set of functions that drive the user through the most common steps of any machine learning projects, from data reading to model testing.

Main features

These are some of the functionalities that mlforall offers:

  1. File extension asbtraction when reading data (only supported for .csv, .txt, .xls, .xlsx, .parquet and .npy)
  2. Automatic handling of non-numeric features and missing values.
  3. A pool with almost all the data-scaling methods available and the most common ML models.
  4. Automatic model evaluation and reporting.

Usage options

The mlforall package can be used by command line interface or with Interactive Python Notebooks (.ipynb). An example of the first usage method is the following:

# MLForAll usage through command line
python -m mlforall --kwargs

With this option, the library will execute the full ML pipeline, from data reading to model testing. The available keyword arguments are:

  • --data_path: Mandatory. str.
    • The absolute or relative route to the data for which the ML pipelin wants to be built.
  • --target_var: Mandatory. str or int.
    • The name or the position of the target column in the original data.
  • --test_size: Optional. float
    • Proportion of the data that wants to be kept as test. The defualt is 0.2.
  • --cv: Optional. int
    • The number of k-folds that will be performed when evaluating the model. The deault is 5.
  • --path_to_save_metrics: Optional. str
    • The absolute or relative path to save the final metrics of the model. It must be a file with the .csv extension. If not provided, the metrics will be printed in the console but not saved.

As mentioned, usage from .ipynb files is also possible. As of version 0.1, the way to use this module from .ipynb files is by importing the submodules and using their methods separatedly. To import the different modules the following code snippet can be used:

# MLForAll usage through .ipynb files
from mlforall import DataReader
from mlforall import DataScaler
from mlforall import DataModeler


data_reader = DataReader.ReadData(*args, **kwargs)
data_scaler = DataScaler.ScaleData(*args, **kwargs)
data_modeler = DataModeler.ModelData(*args, **kwargs)
# or
import mlforall as ml

data_reader = ml.DataReader.ReadData(*args, **kwargs)
data_scaler = ml.DataScaler.ScaleData(*args, **kwargs)
data_modeler = ml.DataModeler.ModelData(*args, **kwargs)

Dependencies

Where to get it

The source code is currently hosted on GitHub at: https://github.com/UnaiTorrecilla/MLForAll

Binary installers for the latest released version are available at the Python Package Index (PyPI)

# PyPI
pip install mlforall

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

mlforall-0.4.tar.gz (10.5 kB view hashes)

Uploaded Source

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