pandas-gpt
is a Python library for doing almost anything with a pandas DataFrame using ChatGPT prompts.
pip install pandas-gpt
Set the OPENAI_API_KEY
environment variable to your OpenAI API key, or use the following code snippet:
import openai
openai.api_key = '<API Key>'
Setup and usage examples are available in this Google Colab notebook.
import pandas as pd
import pandas_gpt
df = pd.DataFrame('https://gist.githubusercontent.com/bluecoconut/9ce2135aafb5c6ab2dc1d60ac595646e/raw/c93c3500a1f7fae469cba716f09358cfddea6343/sales_demo_with_pii_and_all_states.csv')
# Data transformation
df = df.ask('drop purchases from Laurenchester, NY')
df = df.ask('add a new Category column with values "cheap", "regular", or "expensive"')
# Queries
weekday = df.ask('which day of the week had the largest number of orders?')
top_10 = df.ask('what are the top 10 most popular products, as a table')
# Plotting
df.ask('plot monthly and hourly sales')
top_10.ask('horizontal bar plot with pastel colors')
# Allow changes to original dataset
df.ask('do something interesting', mutable=True)
# Show source code before running
df.ask('convert prices from USD to GBP', verbose=True)
If you want to use a different API host such as Azure OpenAI Service:
import openai
openai.api_type = 'azure'
openai.api_base = '<Endpoint>'
openai.api_version = '<Version>'
openai.api_key = '<API Key>'
import pandas_gpt
# pandas_gpt.model = '<Model>' # Default is 'gpt-3.5-turbo'
pandas_gpt.completion_config = {
'engine': '<Engine>',
# 'deployment_id': '<Deployment ID>',
}
- GitHub Copilot: General-purpose code completion (paid subscription)
- Sketch: AI-powered data summarization and code suggestions (works without an API key)
Please note that the limitations of ChatGPT also apply to this library. I would recommend using pandas-gpt
in a sandboxed environment such as Google Colab, Kaggle, or GitPod.