En este tutorial, demostramos la integración del robusto pandas de la biblioteca de manipulación de datos de Python con las capacidades generativas avanzadas de Google Cloud a través del paquete Google.Generativeai y el maniquí Gemini Pro. Al configurar el entorno con las bibliotecas necesarias, configurar la secreto de la API de Google Cloud y servirse las funcionalidades de visualización de iPython, el código proporciona un enfoque paso a paso para construir un agente de ciencias de datos que analice un conjunto de datos de ventas de muestra. El ejemplo muestra cómo convertir un situación de datos en formato de Markdown y luego usar consultas de lengua natural para gestar información sobre los datos, destacando el potencial de combinar herramientas de prospección de datos tradicionales con métodos modernos impulsados por la IA.
!pip install pandas google-generativeai --quiet
Primero, instalamos las bibliotecas Pandas y Google-Generativeai en silencio, estableciendo el entorno para la manipulación de datos y el prospección con IA.
import pandas as pd
import google.generativeai as genai
from IPython.display import Markdown
Importamos PANDAS para la manipulación de datos, Google.Generativeai para penetrar a las capacidades de IA generativas de Google y Markdown de iPython.display para representar expectativas formatadas en impresionado.
GOOGLE_API_KEY = "Use Your API Key Here"
genai.configure(api_key=GOOGLE_API_KEY)
model = genai.GenerativeModel('gemini-2.0-flash-lite')
Asignamos una tecla API de tanteador de posición, configuramos el cliente Google.Generativeai con él e inicializamos el GenerAtivemodel ‘Gemini-2.0-Flash-Lite’ para gestar contenido.
data = {'Product': ('Laptop', 'Mouse', 'Keyboard', 'Instructor', 'Webcam', 'Headphones'),
'Category': ('Electronics', 'Electronics', 'Electronics', 'Electronics', 'Electronics', 'Electronics'),
'Region': ('North', 'South', 'East', 'West', 'North', 'South'),
'Units Sold': (150, 200, 180, 120, 90, 250),
'Price': (1200, 25, 75, 300, 50, 100)}
sales_df = pd.DataFrame(data)
print("Sample Sales Data:")
print(sales_df)
print("-" * 30)
Aquí, creamos un Pandas DataFrame llamado Sales_DF que contiene datos de ventas de muestra para varios productos, e imprimimos el situación de datos seguido de una segmento de separador para distinguir visualmente la salida.
def ask_gemini_about_data(dataframe, query):
"""
Asks the Gemini Pro model a question about the given Pandas DataFrame.
Args:
dataframe: The Pandas DataFrame to analyze.
query: The natural language question about the DataFrame.
Returns:
The response from the Gemini Pro model as a string.
"""
prompt = f"""You are a data analysis agent. Analyze the following pandas DataFrame and answer the question.
DataFrame:
```
{dataframe.to_markdown(index=False)}
```
Question: {query}
Answer:
"""
response = model.generate_content(prompt)
return response.text
Aquí, construimos un indicador de impresionado con formato de un situación de datos Pandas y una consulta de lengua natural, luego usamos el maniquí Gemini Pro para gestar y devolver una respuesta analítica.
# Query 1: What is the total number of units sold across all products?
query1 = "What is the total number of units sold across all products?"
response1 = ask_gemini_about_data(sales_df, query1)
print(f"Question 1: {query1}")
print(f"Answer 1:n{response1}")
print("-" * 30)
# Query 2: Which product had the highest number of units sold?
query2 = "Which product had the highest number of units sold?"
response2 = ask_gemini_about_data(sales_df, query2)
print(f"Question 2: {query2}")
print(f"Answer 2:n{response2}")
print("-" * 30)
# Query 3: What is the promedio price of the products?
query3 = "What is the promedio price of the products?"
response3 = ask_gemini_about_data(sales_df, query3)
print(f"Question 3: {query3}")
print(f"Answer 3:n{response3}")
print("-" * 30)
# Query 4: Show me the products sold in the 'North' region.
query4 = "Show me the products sold in the 'North' region."
response4 = ask_gemini_about_data(sales_df, query4)
print(f"Question 4: {query4}")
print(f"Answer 4:n{response4}")
print("-" * 30)
# Query 5. More complex query: Calculate the total revenue for each product.
query5 = "Calculate the total revenue (Units Sold * Price) for each product and present it in a table."
response5 = ask_gemini_about_data(sales_df, query5)
print(f"Question 5: {query5}")
print(f"Answer 5:n{response5}")
print("-" * 30)
En conclusión, el tutorial ilustra con éxito cómo la sinergia entre los pandas, el paquete Google.Generativeai y el maniquí Gemini Pro pueden modificar las tareas de prospección de datos en un proceso más interactivo y perspicaz. El enfoque simplifica la consulta e interpretación de datos y abre vías para casos de uso avanzados, como la saneamiento de datos, la ingeniería de características y el prospección de datos exploratorios. Al servirse estas herramientas de vanguardia adentro del ecosistema sencillo de Python, los científicos de datos pueden mejorar su productividad e innovación, lo que facilita la elaboración de ideas significativas de los conjuntos de datos complejos.
Aquí está el Cuaderno de colab. Por otra parte, no olvides seguirnos Gorjeo y únete a nuestro Canal de telegrama y LinkedIn GResparcir. No olvides unirte a nuestro 85k+ ml de subreddit.
Asif Razzaq es el CEO de MarktechPost Media Inc .. Como patrón e ingeniero iluminado, ASIF se compromete a servirse el potencial de la inteligencia químico para el aceptablemente social. Su esfuerzo más flamante es el dispersión de una plataforma de medios de inteligencia químico, MarktechPost, que se destaca por su cobertura profunda de noticiero de formación obligatorio y de formación profundo que es técnicamente sólido y fácilmente comprensible por una audiencia amplia. La plataforma cuenta con más de 2 millones de vistas mensuales, ilustrando su popularidad entre el conocido.