Skip to main content

An open-source tool for automating data analysis tasks.

Project description

DataAuto

DataAuto is an open-source tool designed to automate common data analysis tasks. Whether you're a beginner or a seasoned data scientist, DataAuto simplifies the process of loading, summarizing, visualizing your data, training machine learning models, generating reports, and much more.

DataAuto Banner

Features

1. Data Loading & Saving

  • Load Data: Easily load data from CSV, JSON, Excel files, or SQL databases.
  • Save Data: Save processed data to various formats or export to SQL databases.

2. Data Cleaning & Preprocessing

  • Handle Missing Values: Fill missing data using mean, median, mode, or constant values.
  • Remove Outliers: Detect and remove outliers using IQR or Z-score methods.
  • Scale Data: Normalize or standardize numerical features using Min-Max or Standard scaling.

3. Data Visualization

  • Static Plots: Generate histograms, scatter plots, box plots, heatmaps, and line charts using Matplotlib and Seaborn.
  • Interactive Plots: Create interactive visualizations with Plotly and Bokeh.
  • Dashboards: Launch interactive dashboards using Streamlit for real-time data exploration.

4. Exploratory Data Analysis (EDA)

  • Summary Statistics: Quickly obtain descriptive statistics of your dataset.
  • Automated Reports: Generate comprehensive PDF reports summarizing your data analysis.

5. Machine Learning Integration

  • Model Training: Train machine learning models (regression and classification) with ease.
  • Model Evaluation: Evaluate model performance with detailed reports.
  • Hyperparameter Tuning: Optimize model parameters using Hyperopt.

6. Scheduling & Automation

  • Task Scheduling: Automate recurring data analysis tasks using APScheduler or Celery.
  • CI/CD Integration: Ensure code quality and automate deployments with GitHub Actions.

7. External Integrations

  • Cloud Services: Interact with AWS and Google Cloud services for scalable data storage and processing.
  • Communication Platforms: Send notifications and alerts via Slack or Microsoft Teams upon task completion or failures.

8. Testing & Quality Assurance

  • Automated Testing: Maintain code reliability with pytest, unittest, and coverage tools.
  • Code Quality: Enforce coding standards using flake8, pylint, and black.

9. Documentation & Community

  • Comprehensive Docs: Access detailed documentation, tutorials, and API references.
  • Community Support: Engage with other users and contributors through GitHub Discussions and dedicated Slack/Discord channels.

Installation

DataAuto can be installed via pip. Ensure you have Python 3.8 or higher installed.

pip install dataauto

Alternatively, you can install directly from the GitHub repository:

pip install git+https://github.com/yourusername/dataauto.git

Quick Start

  1. Load Data

Load a CSV file:

dataauto load path/to/data.csv --format csv

Load data from a PostgreSQL database:

dataauto load --format sql --db-type postgresql --host localhost --port 5432 --dbname mydb --user myuser --password mypass --query "SELECT * FROM mytable"
  1. Summarize data

Generate summary statistics:

dataauto summarize path/to/data.csv
  1. Plot Data

Generate a histogram:

dataauto plot path/to/data.csv --plot-type histogram --column Age --output-dir plots

Generate an interactive scatter plot:

dataauto plot path/to/data.csv --plot-type scatter --x Age --y Salary --output-dir plots --interactive
  1. Train a Machine Learning Model

Train a classifier:

dataauto train path/to/data.csv --target TargetColumn --model-type classifier --output-model model.joblib --output-report report.txt
  1. Generate a Report

Create a PDF report:

dataauto report path/to/data.csv --output-report analysis_report.pdf
  1. Launch Dashboard

Start the interactive dashboard:

dataauto dashboard
  1. Schedule a Task

Schedule a daily data load:

dataauto schedule --cron "0 0 * * *" dataauto load path/to/data.csv --format csv

Usage Examples

Detailed usage examples can be found in the Examples directory. (In Progress)

Roadmap

Check out our ROADMAP.md for upcoming features and improvements.

Contributing

We welcome contributions! Please see our CONTRIBUTING.md for guidelines.

Code of Conduct

Please adhere to our CODE_OF_CONDUCT.md when interacting with the community.

License

This project is licensed under the MIT License.

Acknowledgements

•	Pandas
•	Click
•	Seaborn
•	Matplotlib
•	Plotly
•	Streamlit
•	Scikit-learn
•	APScheduler
•	Celery
•	FPDF
•	Sphinx
•	MkDocs

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

dataauto-1.0.0.tar.gz (19.7 kB view details)

Uploaded Source

Built Distribution

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

dataauto-1.0.0-py3-none-any.whl (27.1 kB view details)

Uploaded Python 3

File details

Details for the file dataauto-1.0.0.tar.gz.

File metadata

  • Download URL: dataauto-1.0.0.tar.gz
  • Upload date:
  • Size: 19.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for dataauto-1.0.0.tar.gz
Algorithm Hash digest
SHA256 8be890561c2cb2b1ad680cbac4628e74f2270abd744a8fed9a0b8d87a9bceb93
MD5 69967819b5fa4cf913e548c7005c8547
BLAKE2b-256 3da6d87394456136b3d0cf03842b0d3231b4dc51c18b680080a42deefe191ad1

See more details on using hashes here.

File details

Details for the file dataauto-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dataauto-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 27.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for dataauto-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 256a312b9f6d4a804f37a539f59cc649b46958ca6955a6f870997044158b5115
MD5 670336a8b99885656ad2e2fd8386b0c2
BLAKE2b-256 727ca96d3fc25c88b80dc2972b83bb38c060417a81713cf5f54a5c7210fc98e1

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