Skip to main content

Production-grade, AI-powered machine learning data-analysis and preparation library.

Project description

Murthylytics

Production-grade, AI-powered machine-learning data analysis & preparation for Python.

Murthylytics turns hundreds of lines of exploratory-data-analysis and preprocessing boilerplate into a handful of intuitive commands — while staying transparent, configurable and production-quality. Think of it as a next-generation companion to pandas, ydata-profiling, Sweetviz and scikit-learn's preprocessing tools, unified behind one stateful API.

import murthylytics as mlt

mlt.read_csv("data.csv")   # auto-detects encoding, delimiter, dtypes, datetimes

mlt.summary()              # compact overview
mlt.inspect()              # intelligent profiling: roles, targets, leakage, issues

mlt.clean_data()           # roadmap: intelligent cleaning & imputation
mlt.auto_eda()             # roadmap: HTML / Markdown / PDF / JSON reports
mlt.preprocess()           # roadmap: task detection + preprocessing pipeline
mlt.recommend_model()      # roadmap: model recommendations with justification

Why Murthylytics

  • One stateful facade. Load a dataset once; every call operates on the active session — no handle passing.
  • Intelligent by default. Encoding/delimiter/dtype detection, column-role inference, target detection, class-imbalance and data-leakage checks, all automatic.
  • Lightweight core, optional power. Base install is just pandas + numpy. Heavy tooling (plots, XGBoost, SHAP, Parquet…) is lazy-loaded behind extras.
  • Engineered to last. src/ layout, full type hints, SOLID modules, a pure stateless engine under the facade, and a test suite.

Installation

pip install murthylytics            # core (pandas + numpy)
pip install 'murthylytics[stats]'   # scipy + scikit-learn powered analysis
pip install 'murthylytics[viz]'     # matplotlib + seaborn plotting
pip install 'murthylytics[all]'     # everything

Develop locally: pip install -e '.[dev,stats]'

Quick start

import murthylytics as mlt

mlt.read_csv("titanic.csv")

mlt.shape()          # {'rows': 891, 'columns': 12}
mlt.missing()        # per-column missing counts & %
report = mlt.inspect()
print(report)                    # human-readable summary
print(report.recommendations)    # actionable next steps
report.to_dict()                 # JSON-serialisable

Feature status

Area API Status
Data I/O (CSV/Excel/JSON/Parquet/SQL) read_* ✅ available
Exploration show/top/bottom/shape/columns/summary/describe/info/types/missing/duplicates/memory ✅ available
Intelligent inspection inspect ✅ available
Intelligent cleaning clean_data 🚧 roadmap (iteration 2)
Visualization cleaned_pyplot 🚧 roadmap (iteration 3)
AutoEDA reports auto_eda 🚧 roadmap (iteration 4)
Preprocessing preprocess 🚧 roadmap (iteration 5)
Feature engineering / selection engineer_features / select_features 🚧 roadmap (iteration 6)
Model recommendation recommend_model 🚧 roadmap (iteration 7)
Pipeline export export_pipeline 🚧 roadmap (iteration 8)
Plugins (malware, finance, …) use_plugin 🚧 roadmap (iteration 9)

The roadmap functions are already part of the public surface with stable signatures; calling one today raises a clear NotImplementedError pointing at the iteration that delivers it.

Architecture

murthylytics/
├── core/          config · session/context · logging · exceptions · types
├── io/            smart readers · encoding/delimiter/dtype detection · memory opt
├── exploration/   display helpers · intelligent inspection
├── cleaning/      (roadmap) duplicates · imputation · outliers · text fixes
├── viz/           (roadmap) auto-plot dispatcher
├── eda/           (roadmap) HTML/MD/PDF/JSON reports
├── preprocess/    (roadmap) task detection · scaling · encoding · pipelines
├── features/      (roadmap) engineering · selection
├── modeling/      (roadmap) model recommendation
├── pipeline/      (roadmap) save/load/export
└── plugins/       (roadmap) domain plugins

All mutable state lives in a single Session; the engine modules are pure functions, which keeps them independently testable and reusable.

License

MIT © Pranav Murthy

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

murthylytics-0.1.0.tar.gz (23.2 kB view details)

Uploaded Source

Built Distribution

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

murthylytics-0.1.0-py3-none-any.whl (28.0 kB view details)

Uploaded Python 3

File details

Details for the file murthylytics-0.1.0.tar.gz.

File metadata

  • Download URL: murthylytics-0.1.0.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for murthylytics-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1879d896212cc3dd1f936f8e21c62a6057f47ec9527d158c67302dd89ba56a89
MD5 db8e7ab1261153e632e2b6e5d5f4eee8
BLAKE2b-256 50c4bdeae55f84455b7c56677877493af1f1577237b119842526b2d8c5c5c808

See more details on using hashes here.

File details

Details for the file murthylytics-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: murthylytics-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 28.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for murthylytics-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 06825757933c9170dee672a06184162a8d24af66973682f3e90c2c9bc31eb3ed
MD5 3c5390176476eb8c946be1dbc4b6dc37
BLAKE2b-256 b751436d61330830d2b5fa80a5288273f6d5a9ef85a3c22f830215240f881535

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