sharkpy


Namesharkpy JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummaryA friendly machine learning framework with shark-themed feedback 🦈
upload_time2025-08-21 16:51:13
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords automated ml data science education machine learning model comparison reporting visualization
VCS
bugtrack_url
requirements pandas numpy scikit-learn matplotlib seaborn statsmodels joblib optuna xgboost shapash python-docx docx2pdf
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 🦈 SharkPy

A friendly machine learning framework with shark-themed feedback! SharkPy simplifies the machine learning workflow while making it fun and educational.

## Features

- **Model Battle Arena**: Compare multiple models automatically
- **Smart Reporting**: Generate reports in TXT, PDF, and DOCX formats
- **Interactive Visualization**: Beautiful plots with shark-themed styling
- **Model Explanations**: Clear explanations of model behavior
- **Automated Optimization**: Hyperparameter tuning with Optuna
- **Shapash Integration**: Interactive dashboards for model interpretation

## Quick Start

### Installation

```bash
# Basic installation
pip install sharkpy

# Full installation (includes LightGBM and CatBoost)
pip install sharkpy[full]

# Development installation
pip install sharkpy[dev]
```

### Basic Usage

```python
from sharkpy import Shark
import pandas as pd

# Create a Shark instance
shark = Shark()

# Load your data
data = pd.read_csv('your_data.csv')

# Train a model
shark.learn(
    data=data,
    target='target_column',
    model_choice='random_forest'
)

# Make predictions
predictions = shark.predict(new_data)

# Generate reports
shark.report(export_path='report.pdf', format='pdf')
```

### Model Battle Example

```python
# Define models to compete
models = [
    'linear_regression',
    'random_forest',
    'xgboost',
    'lightgbm',
    'catboost'
]

# Let them battle!
battle_results = shark.battle(
    data=data,
    target='target_column',
    models=models,
    metric='r2'
)

# Get the champion
print(f"Winner: {battle_results['champion']}")
print(f"Score: {battle_results['score']:.4f}")
```

## Supported Models

- Linear Regression
- Logistic Regression
- Random Forest
- Support Vector Machines
- Ridge Regression
- Lasso Regression
- K-Nearest Neighbors
- XGBoost
- LightGBM (with full installation)
- CatBoost (with full installation)

## Reports

SharkPy can generate comprehensive reports in multiple formats:

```python
# Text report
shark.report(export_path='report.txt', format='txt')

# PDF report (requires MS Word or LibreOffice)
shark.report(export_path='report.pdf', format='pdf')

# Word document
shark.report(export_path='report.docx', format='docx')
```

## Visualizations

```python
# Prediction plot
shark.plot(kind="prediction")

# Feature importance
shark.plot(kind="feature_importance")

# Interactive Shapash dashboard
shark.explain_with_shapash()
```

## Model Explanations

```python
# Get friendly explanations of your model
shark.explain()

# Create interactive Shapash dashboard
shark.explain_with_shapash(title_story="My Analysis")
```

## Save & Load Models

```python
# Save your model
shark.save_model(name="my_model")

# Load a saved model
shark.load_model("models/my_model.joblib")
```

## Development

```bash
# Install development dependencies
pip install sharkpy[dev]

# Run tests
pytest

# Format code
black sharkpy/
```

## Documentation

Full documentation is available at [sharkpy.readthedocs.io](https://sharkpy.readthedocs.io/)

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Acknowledgments

- Built with scikit-learn, XGBoost, and other amazing open-source tools
- Inspired by making machine learning more accessible and fun

## Contact

- Author: Ezz Eldin Ahmed
- Email: ezzeldinahmad96@gmail.com
- GitHub: [Ezzio11](https://github.com/Ezzio11)

---

Made with 🦈 by SharkPy Team
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "sharkpy",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Ezz Eldin Ahmed <ezzeldinahmad96@gmail.com>",
    "keywords": "automated ml, data science, education, machine learning, model comparison, reporting, visualization",
    "author": null,
    "author_email": "Ezz Eldin Ahmed <ezzeldinahmad96@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/e6/ef/d8287680ae0f01ec0514f868e6669358ef4bcb32546361f8bea5e4b362e9/sharkpy-1.0.0.tar.gz",
    "platform": null,
    "description": "# \ud83e\udd88 SharkPy\n\nA friendly machine learning framework with shark-themed feedback! SharkPy simplifies the machine learning workflow while making it fun and educational.\n\n## Features\n\n- **Model Battle Arena**: Compare multiple models automatically\n- **Smart Reporting**: Generate reports in TXT, PDF, and DOCX formats\n- **Interactive Visualization**: Beautiful plots with shark-themed styling\n- **Model Explanations**: Clear explanations of model behavior\n- **Automated Optimization**: Hyperparameter tuning with Optuna\n- **Shapash Integration**: Interactive dashboards for model interpretation\n\n## Quick Start\n\n### Installation\n\n```bash\n# Basic installation\npip install sharkpy\n\n# Full installation (includes LightGBM and CatBoost)\npip install sharkpy[full]\n\n# Development installation\npip install sharkpy[dev]\n```\n\n### Basic Usage\n\n```python\nfrom sharkpy import Shark\nimport pandas as pd\n\n# Create a Shark instance\nshark = Shark()\n\n# Load your data\ndata = pd.read_csv('your_data.csv')\n\n# Train a model\nshark.learn(\n    data=data,\n    target='target_column',\n    model_choice='random_forest'\n)\n\n# Make predictions\npredictions = shark.predict(new_data)\n\n# Generate reports\nshark.report(export_path='report.pdf', format='pdf')\n```\n\n### Model Battle Example\n\n```python\n# Define models to compete\nmodels = [\n    'linear_regression',\n    'random_forest',\n    'xgboost',\n    'lightgbm',\n    'catboost'\n]\n\n# Let them battle!\nbattle_results = shark.battle(\n    data=data,\n    target='target_column',\n    models=models,\n    metric='r2'\n)\n\n# Get the champion\nprint(f\"Winner: {battle_results['champion']}\")\nprint(f\"Score: {battle_results['score']:.4f}\")\n```\n\n## Supported Models\n\n- Linear Regression\n- Logistic Regression\n- Random Forest\n- Support Vector Machines\n- Ridge Regression\n- Lasso Regression\n- K-Nearest Neighbors\n- XGBoost\n- LightGBM (with full installation)\n- CatBoost (with full installation)\n\n## Reports\n\nSharkPy can generate comprehensive reports in multiple formats:\n\n```python\n# Text report\nshark.report(export_path='report.txt', format='txt')\n\n# PDF report (requires MS Word or LibreOffice)\nshark.report(export_path='report.pdf', format='pdf')\n\n# Word document\nshark.report(export_path='report.docx', format='docx')\n```\n\n## Visualizations\n\n```python\n# Prediction plot\nshark.plot(kind=\"prediction\")\n\n# Feature importance\nshark.plot(kind=\"feature_importance\")\n\n# Interactive Shapash dashboard\nshark.explain_with_shapash()\n```\n\n## Model Explanations\n\n```python\n# Get friendly explanations of your model\nshark.explain()\n\n# Create interactive Shapash dashboard\nshark.explain_with_shapash(title_story=\"My Analysis\")\n```\n\n## Save & Load Models\n\n```python\n# Save your model\nshark.save_model(name=\"my_model\")\n\n# Load a saved model\nshark.load_model(\"models/my_model.joblib\")\n```\n\n## Development\n\n```bash\n# Install development dependencies\npip install sharkpy[dev]\n\n# Run tests\npytest\n\n# Format code\nblack sharkpy/\n```\n\n## Documentation\n\nFull documentation is available at [sharkpy.readthedocs.io](https://sharkpy.readthedocs.io/)\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- Built with scikit-learn, XGBoost, and other amazing open-source tools\n- Inspired by making machine learning more accessible and fun\n\n## Contact\n\n- Author: Ezz Eldin Ahmed\n- Email: ezzeldinahmad96@gmail.com\n- GitHub: [Ezzio11](https://github.com/Ezzio11)\n\n---\n\nMade with \ud83e\udd88 by SharkPy Team",
    "bugtrack_url": null,
    "license": null,
    "summary": "A friendly machine learning framework with shark-themed feedback \ud83e\udd88",
    "version": "1.0.0",
    "project_urls": {
        "Changelog": "https://github.com/Ezzio11/sharkpy/blob/main/CHANGELOG.md",
        "Documentation": "https://sharkpy.readthedocs.io/",
        "Homepage": "https://github.com/Ezzio11/sharkpy",
        "Issues": "https://github.com/Ezzio11/sharkpy/issues",
        "Repository": "https://github.com/Ezzio11/sharkpy.git"
    },
    "split_keywords": [
        "automated ml",
        " data science",
        " education",
        " machine learning",
        " model comparison",
        " reporting",
        " visualization"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b56d88ba56980e9f54cb836e6d81cf7e37187af1a150a2316bd54ea9d5f2fbe3",
                "md5": "ff9bff3d1520f967667040f1307045a9",
                "sha256": "e88abf573a7a3048c930c41c1573976a5d9fffce87a7f350cb2158f287e7001b"
            },
            "downloads": -1,
            "filename": "sharkpy-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ff9bff3d1520f967667040f1307045a9",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 35231,
            "upload_time": "2025-08-21T16:51:04",
            "upload_time_iso_8601": "2025-08-21T16:51:04.083885Z",
            "url": "https://files.pythonhosted.org/packages/b5/6d/88ba56980e9f54cb836e6d81cf7e37187af1a150a2316bd54ea9d5f2fbe3/sharkpy-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e6efd8287680ae0f01ec0514f868e6669358ef4bcb32546361f8bea5e4b362e9",
                "md5": "c9b5b6578fe33a2e9a04619584da5a93",
                "sha256": "8731c5f08c38aa159fbe652e2b42ce96fcf6a62900d9dae12444eb9bfa73b8b9"
            },
            "downloads": -1,
            "filename": "sharkpy-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c9b5b6578fe33a2e9a04619584da5a93",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 2369346,
            "upload_time": "2025-08-21T16:51:13",
            "upload_time_iso_8601": "2025-08-21T16:51:13.967496Z",
            "url": "https://files.pythonhosted.org/packages/e6/ef/d8287680ae0f01ec0514f868e6669358ef4bcb32546361f8bea5e4b362e9/sharkpy-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-21 16:51:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Ezzio11",
    "github_project": "sharkpy",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "pandas",
            "specs": [
                [
                    ">=",
                    "1.3.0"
                ]
            ]
        },
        {
            "name": "numpy",
            "specs": [
                [
                    ">=",
                    "1.19.0"
                ]
            ]
        },
        {
            "name": "scikit-learn",
            "specs": [
                [
                    ">=",
                    "0.24.0"
                ]
            ]
        },
        {
            "name": "matplotlib",
            "specs": [
                [
                    ">=",
                    "3.4.0"
                ]
            ]
        },
        {
            "name": "seaborn",
            "specs": [
                [
                    ">=",
                    "0.11.0"
                ]
            ]
        },
        {
            "name": "statsmodels",
            "specs": [
                [
                    ">=",
                    "0.12.0"
                ]
            ]
        },
        {
            "name": "joblib",
            "specs": [
                [
                    ">=",
                    "1.0.0"
                ]
            ]
        },
        {
            "name": "optuna",
            "specs": [
                [
                    ">=",
                    "2.8.0"
                ]
            ]
        },
        {
            "name": "xgboost",
            "specs": [
                [
                    ">=",
                    "1.4.0"
                ]
            ]
        },
        {
            "name": "shapash",
            "specs": [
                [
                    ">=",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "python-docx",
            "specs": [
                [
                    ">=",
                    "0.8.11"
                ]
            ]
        },
        {
            "name": "docx2pdf",
            "specs": [
                [
                    ">=",
                    "0.1.8"
                ]
            ]
        }
    ],
    "lcname": "sharkpy"
}
        
Elapsed time: 0.75526s