Skip to main content

A lightweight tool to train, evaluate, and export ML models in one line.

Project description

📦 ezyml 🚀

From raw data to a trained model — in just one line of code.

License Python Versions

PyPI Downloads


🌟 Why ezyml?

ezyml is a lightweight, high-level Python library and CLI tool that automates the most tedious parts of your ML pipeline — so you can focus on what matters. Whether you're building a classifier, a regressor, or just exploring data, ezyml does the heavy lifting.

✅ Key Features

  • 🪄 Auto-Pilot Mode – Detects task type (classification, regression, etc.) automatically.
  • 🧹 Smart Preprocessing – Handles missing values, encodes categories, and scales features out of the box.
  • 🧰 20+ Models – Pre-integrated models from scikit-learn and xgboost.
  • 💾 One-Line Export – Save your model as .pkl and performance report as .json.
  • 📉 Dimensionality Reduction – Easily visualize data using PCA or t-SNE.
  • 🧪 Dual Interface – Use as a Python package or from the command line.

📦 Installation

Install via pip:

pip install ezyml

🚀 CLI Quickstart

🧠 Train a Classifier

ezyml train \
  --data titanic.csv \
  --target Survived \
  --model extra_trees \
  --output titanic_model.pkl

📈 Train a Regressor

ezyml train \
  --data housing.csv \
  --target price \
  --model ridge \
  --output house_price_model.pkl

📉 Run PCA

ezyml reduce \
  --data features.csv \
  --model pca \
  --components 2 \
  --output pca_data.csv

🧪 Python API Example

▶️ Classification

from ezyml import EZTrainer

# 1. Initialize
trainer = EZTrainer(data='heart.csv', target='label', model='naive_bayes')

# 2. Train
trainer.train()

# 3. Save Results
trainer.save_model('heart_model.pkl')
trainer.save_report('heart_report.json')

🔍 Dimensionality Reduction (PCA)

from ezyml import EZTrainer

pca_trainer = EZTrainer(
    data='high_dim.csv',
    model='pca',
    task='dim_reduction',
    n_components=2
)

pca_trainer.train()
pca_trainer.save_transformed('pca_output.csv')

🧰 Supported Models

Task Models
Classification logistic_regression, random_forest, xgboost, svm, naive_bayes, gradient_boosting, extra_trees, knn
Regression linear_regression, ridge, lasso, elasticnet, random_forest, xgboost, svr, gradient_boosting
Clustering kmeans, dbscan, agglo (Agglomerative Clustering)
Dimensionality Reduction pca, tsne

📜 License

MIT License – View License


👨‍💻 Author

Built with ❤️ by Raktim Kalita


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

ezyml-1.2.1.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ezyml-1.2.1-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file ezyml-1.2.1.tar.gz.

File metadata

  • Download URL: ezyml-1.2.1.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ezyml-1.2.1.tar.gz
Algorithm Hash digest
SHA256 3355e42dc84432538a1a9bfe73579316555d7649166c68fd795269e42e648793
MD5 83c728dcfcd34369e4fe7de190e9e27e
BLAKE2b-256 dc1ca9f7a76483e3cef52b6c69ac4d0a06b3eb431a63f7ec7e55aa20250cc6f2

See more details on using hashes here.

File details

Details for the file ezyml-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: ezyml-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ezyml-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 788c5df5881cbaab84c5a41ece7903b3f33a73871a4e6fd9036dde3c66dc5b3b
MD5 ac0c4a1baaab9a30c60e93c245500dc1
BLAKE2b-256 84250d655228b6f194d6a8a150ad040470c71d05af4caa328862f8391b37918c

See more details on using hashes here.

Supported by

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