DataGuy
DataGuy is a Python package designed to simplify data science workflows by leveraging the power of Large Language Models (LLMs). It provides tools for automated data wrangling, intelligent analysis, and AI-assisted visualization, making it ideal for small-to-medium datasets.
- GitHub: View the source code on GitHub
- PyPI: Install from PyPI
- Documentation: Read the full documentation
- Demo: Try the demo
Features
- Automated Data Wrangling: Clean and preprocess your data with minimal effort using LLM-generated code.
- AI-Powered Data Visualization: Generate insightful plots and visualizations based on natural language descriptions.
- Intelligent Data Analysis: Perform descriptive and inferential analysis with the help of LLMs.
- Customizable Workflows: Integrate with pandas, matplotlib, and other Python libraries for seamless data manipulation.
- Safe Code Execution: Built-in safeguards to ensure only safe and trusted code is executed.
Installation
Install the package using pip:
pip install dataguy
Usage
Getting Started
-
Load Anthrpic API key in your environment:
import os os.environ["ANTHROPIC_API_KEY"] = "your_api_key_here"
Replace
your_api_key_herewith your actual API key from Anthropic. -
Import the Package:
from dataguy import DataGuy
-
Initialize a DataGuy Instance:
dg = DataGuy()
-
Load Your Data:
import pandas as pd data = pd.DataFrame({"age": [25, 30, None], "score": [88, 92, 75]}) dg.set_data(data)
-
Summarize Your Data:
summary = dg.summarize_data() print(summary)
-
Wrangle Your Data:
cleaned_data = dg.wrangle_data()
-
Visualize Your Data:
dg.plot_data("age", "score")
-
Analyze Your Data:
results = dg.analyze_data() print(results)
Example Workflow
from dataguy import DataGuy
import pandas as pd
# Initialize DataGuy
dg = DataGuy()
# Load data
data = pd.read_csv("path/to/data.csv")
dg.set_data(data)
# Summarize data
summary = dg.summarize_data()
print("Data Summary:", summary)
# Wrangle data
cleaned_data = dg.wrangle_data()
# Visualize data
dg.plot_data("column_x", "column_y")
# Analyze data
analysis_results = dg.analyze_data()
print("Analysis Results:", analysis_results)
Key Methods
set_data(obj): Load data into theDataGuyinstance. Supports pandas DataFrames, dictionaries, lists, numpy arrays, and CSV files.summarize_data(): Generate a summary of the dataset, including shape, columns, missing values, and means.wrangle_data(): Automatically clean and preprocess the dataset for analysis.plot_data(column_x, column_y): Create a scatter plot of two columns using matplotlib.analyze_data(): Perform an automated analysis of the dataset, returning descriptive statistics and insights.
Requirements
- Python 3.8 or higher
- Dependencies:
- pandas
- numpy
- matplotlib
- scikit-learn
- claudette
- anthropic
Contributing
Contributions are welcome! Please submit issues or pull requests via the GitHub repository.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Authors
- István Magyary
- Sára Viemann
- Kristóf Bálint
For inquiries, contact: magistak@gmail.com
Metadata
Release files for dataguy 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dataguy-0.1.6.tar.gz | 350.1 kB | Without provenance | Details for dataguy-0.1.6.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dataguy-0.1.6-py3-none-any.whl | Python 3 | none | any | Details for dataguy-0.1.6-py3-none-any.whl |
Total release size: 364.4 kB
Release files / dataguy-0.1.6.tar.gz
| Download URL | dataguy-0.1.6.tar.gz |
|---|---|
| Size | 350.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c2104226937bcdbc858c7a4b20e72e4dccd811ba3c0a721f953ebb2abe4da76e
|
|
BLAKE2b-256 checksum How to use checksums |
41a6fb6e836a1ffa114f1612e54bf5fa4b9bbf301bc1e13457bc68607294117c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Release files / dataguy-0.1.6-py3-none-any.whl
| Download URL | dataguy-0.1.6-py3-none-any.whl |
|---|---|
| Size | 14.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0a995c3d32b117bf12fe54765808646195d1fe339e2c836ee1717c6f65b7b04a
|
|
BLAKE2b-256 checksum How to use checksums |
4ce0a8a69b8248e9b4eec897f1525e77b58c6cd3dd2446e90086f1a7ff95443b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Security for dataguy 0.1.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.