๐ Advanced analytics and KPI engine for data-driven insights and intelligent business intelligence
Project description
๐ AnalystX
Advanced analytics and KPI engine for intelligent business intelligence and data-driven decision making.
๐ Overview
AnalystX is a comprehensive Python library designed to streamline data analytics workflows. It provides out-of-the-box capabilities for data profiling, KPI calculation, intelligent insight generation, and professional report creation. Perfect for data scientists, business analysts, and developers seeking to enable data-driven decision making.
Why AnalystX?
- ๐ Fast: Optimized for performance on large datasets
- ๐ง Smart: Automatically detects patterns and anomalies
- ๐ฆ Complete: All-in-one analytics solution
- ๐ง Flexible: Highly extensible and customizable
- ๐ Professional: Create publication-ready reports
โจ Features
| Feature | Description |
|---|---|
| ๐ Data Profiling | Automatic data quality checks, statistical analysis, and distribution analysis |
| ๐ฏ KPI Engine | Flexible and extensible key performance indicator calculation with custom metrics |
| ๐ก Insight Engine | Generate actionable, business-ready insights from your data |
| ๐ Report Generation | Create professional, formatted analytics reports automatically |
| ๐ฅ๏ธ CLI Interface | Command-line tools for easy integration and automation |
| ๐ Extensible API | Build custom analyzers and metrics on our robust framework |
๐ Installation
Via PyPI (Recommended)
pip install analystx
From Source (Development)
# Clone the repository
git clone https://github.com/sinoyon/analystx.git
cd analystx
# Install in editable mode with development dependencies
pip install -e ".[dev]"
# Run tests
pytest
Optional Dependencies
For documentation building:
pip install analystx[docs]
For full development setup:
pip install analystx[dev,docs]
๐ฏ Quick Start
Basic Usage
import pandas as pd
from analystx import AnalystX
# Load your data
df = pd.read_csv('data.csv')
# Initialize AnalystX
analyzer = AnalystX(data=df)
# Run data profiling
profile = analyzer.profile()
print(profile.summary())
# Calculate KPIs
kpis = analyzer.calculate_kpis()
print(kpis)
# Generate insights
insights = analyzer.generate_insights()
for insight in insights:
print(insight)
# Create a professional report
report = analyzer.create_report(output_format='html')
report.save('analytics_report.html')
Advanced Example
from analystx import AnalystX
from analystx.kpi_engine import KPIConfig
# Configure custom KPIs
kpi_config = KPIConfig()
kpi_config.add_metric('revenue_growth', formula='(current - previous) / previous * 100')
kpi_config.add_metric('customer_retention', formula='retained_customers / total_customers')
analyzer = AnalystX(data=df, kpi_config=kpi_config)
# Export insights to multiple formats
analyzer.create_report(output_format='pdf').save('report.pdf')
analyzer.create_report(output_format='excel').save('report.xlsx')
๐ Command Line Interface
Access all features from the command line:
# Show help
analystx --help
# Profile a CSV file
analystx profile data.csv --output profile.json
# Generate a report
analystx report data.csv --format html --output report.html
# Calculate KPIs
analystx kpi data.csv --config kpi_config.json
๐ Documentation
- Full Documentation - Comprehensive API reference and guides
- User Guide - Getting started and best practices
- API Reference - Detailed function and class documentation
- Examples - Jupyter notebooks with real-world examples
๐ค Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
Development Setup
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest -v
# Run linting and formatting
black src/
isort src/
flake8 src/
# Type checking
mypy src/
๐ Roadmap
- Real-time data streaming support
- Machine learning-based anomaly detection
- Interactive dashboards
- Multi-language support
- Cloud integration (AWS, GCP, Azure)
- Advanced forecasting models
๐ Bug Reports & Feature Requests
Found a bug or have an idea? Please open an issue on our GitHub Issues page.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ค Author & Support
Developed by: Shariful Islam
Email: srnoyon780@gmail.com
GitHub: @sinoyon
Get Help
- ๐ Check the documentation
- ๐ฌ Open a GitHub Discussion
- ๐ Report a Bug
โญ Show Your Support
If you find AnalystX helpful, please consider:
- Starring this repository โญ
- Sharing it with your network
- Contributing improvements
- Providing feedback and suggestions
Happy analyzing! ๐
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file analystx-0.1.1.tar.gz.
File metadata
- Download URL: analystx-0.1.1.tar.gz
- Upload date:
- Size: 24.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f95454bff4439e5e7893a9ed14e61149692df497eceedea04a1e805e99cf0fd
|
|
| MD5 |
2802d6ade08e50277148e08ef8e9eff4
|
|
| BLAKE2b-256 |
c3897f0542c76f2ebde27771f2465e0b644b4b27c4875b2a11d35b0eab98f27f
|
File details
Details for the file analystx-0.1.1-py3-none-any.whl.
File metadata
- Download URL: analystx-0.1.1-py3-none-any.whl
- Upload date:
- Size: 24.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ca2d30410581ab89a5a952f3b4ecdbc123a3bfa6eae031008d3be0d4f875414
|
|
| MD5 |
ae32ae5db54c0729ee265316cbbbf3fa
|
|
| BLAKE2b-256 |
b79fe108cba849fbcf331b1247f1e5e4371cfe7d936af8cfbe7895fb785f8116
|