# <a name="top"></a>SheetBuddy
SheetBuddy is a Python library for performing exploratory data analysis (EDA), data summary, and generating comprehensive reports in Excel format. It supports reading data from CSV files, JSON files, and APIs.
[![PyPI - Daily Downloads](https://img.shields.io/pypi/dd/sheetbuddy)](https://pypi.org/project/sheetbuddy/)
[![PyPI - Version](https://img.shields.io/pypi/v/sheetbuddy)](https://pypi.org/project/sheetbuddy/)
[![PyPI - License](https://img.shields.io/pypi/l/sheetbuddy)](https://pypi.org/project/sheetbuddy/)
[![Python Versions](https://img.shields.io/pypi/pyversions/sheetbuddy)](https://pypi.org/project/sheetbuddy/)
[![GitHub issues](https://img.shields.io/github/issues/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/issues)
[![GitHub pull requests](https://img.shields.io/github/issues-pr/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/pulls)
[![GitHub contributors](https://img.shields.io/github/contributors/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/graphs/contributors)
[![GitHub forks](https://img.shields.io/github/forks/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/network/members)
[![GitHub stars](https://img.shields.io/github/stars/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/stargazers)
[![GitHub](https://img.shields.io/github/license/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/blob/main/LICENSE)
[![fork](https://img.shields.io/badge/fork-red)](https://github.com/login?return_to=%2FAshishRogannagari%2FSheetBuddy)
[![Clone](https://img.shields.io/badge/Clone-blue)](https://github.com/AshishRogannagari/sheetbuddy.git)
## Features
- Data Cleaning and Preprocessing
- Load data from CSV, JSON, and APIs
- Generate EDA reports in Excel format
- Summary statistics, null values, standard deviation, and more
- Column information including descriptions ('May not be available for all columns')
- Conditional formatting and styling for Excel sheets
- Summary Statistics
- Visualization (Correlation Matrix, Basic Mathematics)
- Data Export (Excel)
## New Features in SheetBuddy v2.0.0 🎉
We are excited to announce the release of SheetBuddy v2.0.0, which brings several new features and enhancements to improve your data analysis experience:
1. **Expanded Column Descriptions 📝:**
- Added a comprehensive dictionary for column descriptions.
2. **Enhanced Data Ingestion 🚀:**
- Improved methods for reading CSV, JSON, and API data.
- Better error handling for smoother data ingestion.
3. **Advanced Data Summarization 📊:**
- New `get_column_info` method for detailed column information.
- Enhanced summary statistics for all data types.
- Methods to calculate null values, percentages, standard deviation, unique values, and most frequent values.
- `get_basic_math` method for basic calculations (mean, median, mode, range).
4. **Improved Excel Formatting and Styling ✨:**
- Consistent formatting and styling for all Excel sheets.
- New methods for conditional formatting and adding text headings.
5. **Visualization Enhancements 📈:**
- New methods for histograms, correlation heatmaps, and bar charts in Excel sheets.
6. **Comprehensive Dataset Info Sheet 🗂️:**
- Summary sheet with dataset name, format, rows, columns, description, and data link.
7. **Robust Report Generation 📝:**
- Comprehensive EDA report with multiple detailed sheets.
- Improved progress indicators and logging.
## Installation
You can install SheetBuddy using `pip`:
```bash
pip install sheetbuddy
```
# or
```bash
pip install sheetbuddy==2.0.0
```
## Check for the lastest version
```bash
pip install sheetbuddy --upgrade
```
### Usage
Example 1: Generating an EDA and Datasummary Report from a CSV File.
```python
from sheetbuddy import SheetBuddy
file_path_or_url = 'https://people.sc.fsu.edu/~jburkardt/data/csv/airtravel.csv'
output_file_name = 'datasummary_report.xlsx'
sb = SheetBuddy(file_path_or_url)
sb.generate_eda_report(output_file_name)
```
Example 2: Generating an Datasummary & EDA Report from a Local JSON File.
```python
from sheetbuddy import SheetBuddy
file_path = 'path/to/your/data.json'
output_file_name = 'enter_your_desired_name.xlsx'
sb = SheetBuddy(file_path)
sb.generate_eda_report(output_file_name)
```
Example 3: Generating an Datasummary & EDA Report from a Local CSV File.
```python
from sheetbuddy import SheetBuddy
filename = 'your_local_path.csv'
outputfile = 'enter_your_desired_name.xlsx'
sb = SheetBuddy(filename)
sb.generate_eda_report(outputfile)
```
# How It Works:
1.Data Loading: SheetBuddy loads data from the specified source (CSV, JSON, or API).
2.Data Analysis: It performs various data analyses, including summary statistics, null values analysis, and column descriptions.
3.Report Generation: The results are compiled into an Excel file with conditional formatting and styling for easy interpretation.
# Contributing:
Contributions are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request on GitHub.
# License:
SheetBuddy is licensed under the MIT License. See the LICENSE file for more details.
We hope you enjoy these new features and improvements in SheetBuddy v2.0.0 ! 🚀
<a href="#top" style="position:fixed;bottom:20px;right:20px;background-color:#007bff;color:white;padding:15px 20px;border-radius:25px;text-align:center;text-decoration:none;font-size:18px;box-shadow:2px 2px 5px rgba(0,0,0,0.3);"> Back to Top ↑ </a>
Raw data
{
"_id": null,
"home_page": "https://github.com/AshishRogannagari/sheetbuddy",
"name": "SheetBuddy",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "Data Analysis, EDA, CSV, JSON, API, Excel",
"author": "Ashish Rogannagari",
"author_email": "Ashishrogannagari98@gmail.com",
"download_url": null,
"platform": null,
"description": "# <a name=\"top\"></a>SheetBuddy\n\nSheetBuddy is a Python library for performing exploratory data analysis (EDA), data summary, and generating comprehensive reports in Excel format. It supports reading data from CSV files, JSON files, and APIs.\n\n[![PyPI - Daily Downloads](https://img.shields.io/pypi/dd/sheetbuddy)](https://pypi.org/project/sheetbuddy/)\n[![PyPI - Version](https://img.shields.io/pypi/v/sheetbuddy)](https://pypi.org/project/sheetbuddy/)\n[![PyPI - License](https://img.shields.io/pypi/l/sheetbuddy)](https://pypi.org/project/sheetbuddy/)\n[![Python Versions](https://img.shields.io/pypi/pyversions/sheetbuddy)](https://pypi.org/project/sheetbuddy/)\n\n[![GitHub issues](https://img.shields.io/github/issues/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/issues)\n[![GitHub pull requests](https://img.shields.io/github/issues-pr/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/pulls)\n[![GitHub contributors](https://img.shields.io/github/contributors/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/graphs/contributors)\n[![GitHub forks](https://img.shields.io/github/forks/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/network/members)\n[![GitHub stars](https://img.shields.io/github/stars/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/stargazers)\n[![GitHub](https://img.shields.io/github/license/AshishRogannagari/sheetbuddy)](https://github.com/AshishRogannagari/sheetbuddy/blob/main/LICENSE)\n[![fork](https://img.shields.io/badge/fork-red)](https://github.com/login?return_to=%2FAshishRogannagari%2FSheetBuddy)\n[![Clone](https://img.shields.io/badge/Clone-blue)](https://github.com/AshishRogannagari/sheetbuddy.git)\n\n## Features\n- Data Cleaning and Preprocessing\n- Load data from CSV, JSON, and APIs\n- Generate EDA reports in Excel format\n- Summary statistics, null values, standard deviation, and more\n- Column information including descriptions ('May not be available for all columns')\n- Conditional formatting and styling for Excel sheets\n- Summary Statistics\n- Visualization (Correlation Matrix, Basic Mathematics)\n- Data Export (Excel)\n\n## New Features in SheetBuddy v2.0.0 \ud83c\udf89\n\nWe are excited to announce the release of SheetBuddy v2.0.0, which brings several new features and enhancements to improve your data analysis experience:\n\n1. **Expanded Column Descriptions \ud83d\udcdd:**\n - Added a comprehensive dictionary for column descriptions.\n\n2. **Enhanced Data Ingestion \ud83d\ude80:**\n - Improved methods for reading CSV, JSON, and API data.\n - Better error handling for smoother data ingestion.\n\n3. **Advanced Data Summarization \ud83d\udcca:**\n - New `get_column_info` method for detailed column information.\n - Enhanced summary statistics for all data types.\n - Methods to calculate null values, percentages, standard deviation, unique values, and most frequent values.\n - `get_basic_math` method for basic calculations (mean, median, mode, range).\n\n4. **Improved Excel Formatting and Styling \u2728:**\n - Consistent formatting and styling for all Excel sheets.\n - New methods for conditional formatting and adding text headings.\n\n5. **Visualization Enhancements \ud83d\udcc8:**\n - New methods for histograms, correlation heatmaps, and bar charts in Excel sheets.\n\n6. **Comprehensive Dataset Info Sheet \ud83d\uddc2\ufe0f:**\n - Summary sheet with dataset name, format, rows, columns, description, and data link.\n\n7. **Robust Report Generation \ud83d\udcdd:**\n - Comprehensive EDA report with multiple detailed sheets.\n - Improved progress indicators and logging.\n\n## Installation\n\nYou can install SheetBuddy using `pip`:\n\n```bash\npip install sheetbuddy\n```\n# or\n```bash\npip install sheetbuddy==2.0.0\n```\n\n## Check for the lastest version\n\n\n```bash\npip install sheetbuddy --upgrade\n```\n### Usage\n\nExample 1: Generating an EDA and Datasummary Report from a CSV File.\n\n\n```python\n\nfrom sheetbuddy import SheetBuddy \n\nfile_path_or_url = 'https://people.sc.fsu.edu/~jburkardt/data/csv/airtravel.csv'\noutput_file_name = 'datasummary_report.xlsx'\n\nsb = SheetBuddy(file_path_or_url)\nsb.generate_eda_report(output_file_name)\n```\n\n\n\nExample 2: Generating an Datasummary & EDA Report from a Local JSON File.\n\n```python\n\nfrom sheetbuddy import SheetBuddy\n\nfile_path = 'path/to/your/data.json'\noutput_file_name = 'enter_your_desired_name.xlsx'\n\nsb = SheetBuddy(file_path)\nsb.generate_eda_report(output_file_name)\n\n```\nExample 3: Generating an Datasummary & EDA Report from a Local CSV File.\n\n```python\n\nfrom sheetbuddy import SheetBuddy\n\nfilename = 'your_local_path.csv'\noutputfile = 'enter_your_desired_name.xlsx'\n\nsb = SheetBuddy(filename)\nsb.generate_eda_report(outputfile)\n\n```\n# How It Works:\n\n1.Data Loading: SheetBuddy loads data from the specified source (CSV, JSON, or API).\n\n2.Data Analysis: It performs various data analyses, including summary statistics, null values analysis, and column descriptions.\n\n3.Report Generation: The results are compiled into an Excel file with conditional formatting and styling for easy interpretation.\n\n# Contributing:\n\nContributions are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request on GitHub.\n\n# License:\n\nSheetBuddy is licensed under the MIT License. See the LICENSE file for more details.\n\n\nWe hope you enjoy these new features and improvements in SheetBuddy v2.0.0 ! \ud83d\ude80\n\n<a href=\"#top\" style=\"position:fixed;bottom:20px;right:20px;background-color:#007bff;color:white;padding:15px 20px;border-radius:25px;text-align:center;text-decoration:none;font-size:18px;box-shadow:2px 2px 5px rgba(0,0,0,0.3);\"> Back to Top \u2191 </a>\n\n\n\n\n\n\n\n\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": "A library for data summary and analysis from various formats such as CSV, API, URL, etc.",
"version": "2.0.0",
"project_urls": {
"Homepage": "https://github.com/AshishRogannagari/sheetbuddy"
},
"split_keywords": [
"data analysis",
" eda",
" csv",
" json",
" api",
" excel"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9f5e6e6ba53adbc185d221e16977bd219894c33acbc1715a5e191372b77507aa",
"md5": "6fc165ee3b272bf55b4cd9be73665ad7",
"sha256": "f1106abcc7544f1c8be9db1c177987d7d27792c521ed1f54b77261a0454bd6c9"
},
"downloads": -1,
"filename": "SheetBuddy-2.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6fc165ee3b272bf55b4cd9be73665ad7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 4164,
"upload_time": "2024-07-02T10:36:07",
"upload_time_iso_8601": "2024-07-02T10:36:07.322813Z",
"url": "https://files.pythonhosted.org/packages/9f/5e/6e6ba53adbc185d221e16977bd219894c33acbc1715a5e191372b77507aa/SheetBuddy-2.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-02 10:36:07",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "AshishRogannagari",
"github_project": "sheetbuddy",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "numpy",
"specs": []
},
{
"name": "pandas",
"specs": []
},
{
"name": "requests",
"specs": []
},
{
"name": "openpyxl",
"specs": []
},
{
"name": "tqdm",
"specs": []
},
{
"name": "matplotlib",
"specs": []
},
{
"name": "seaborn",
"specs": []
}
],
"lcname": "sheetbuddy"
}