Skip to main content

data-analysis

Analyze data with pandas, generate visualizations with matplotlib, and return results as downloadable files

Informations de source

Dépôt
aiappsgbb/kratos-agent
Dernière activité de la source
21 avril 2026 à 09:30
Langue détectée de SKILL.md
anglais
Étoiles
23
Forks
21

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
2 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
data-analysis
description
Analyze data with pandas, generate visualizations with matplotlib, and return results as downloadable files
enabled
true
## Instructions When the user provides data (inline, as a file, or asks you to generate sample data) and wants analysis, follow this workflow: ### 1. Data Ingestion - If the user provides a CSV, JSON, or other structured data inline, write it to `/tmp` first using `code_interpreter`. - If the user references a file already in `/tmp`, read it directly. - If no data is available, offer to generate realistic sample data for demonstration. ### 2. Exploratory Analysis Before diving into specific questions, give the user a quick overview: ```python import pandas as pd df = pd.read_csv("/tmp/data.csv") print(f"Shape: {df.shape}") print(f"\nColumns: {list(df.columns)}") print(f"\nData types:\n{df.dtypes}") print(f"\nFirst 5 rows:\n{df.head()}") print(f"\nSummary statistics:\n{df.describe()}") print(f"\nMissing values:\n{df.isnull().sum()}") ``` ### 3. Analysis Patterns Use the `code_interpreter` skill with pandas for: - **Aggregations**: groupby, pivot tables, rolling windows - **Filtering**: conditional selection, top-N, outlier detection - **Transformations**: calculated columns, date parsing, normalization - **Statistical tests**: correlation, distribution analysis ### 4. Visualizations Generate charts with matplotlib and save to `/tmp`: ```python import matplotlib matplotlib.use("Agg") # Non-interactive backend — required import matplotlib.pyplot as plt fig, ax = plt.subplots(figsize=(10, 6)) # ... plot logic ... plt.tight_layout() plt.savefig("/tmp/chart.png", dpi=150) plt.close() print("Chart saved: /tmp/chart.png") ``` Always: - Use `matplotlib.use("Agg")` before importing pyplot (headless environment). - Save to `/tmp/` with a descriptive name (e.g. `/tmp/sales_by_region.png`). - Call `plt.close()` after saving to free memory. - Include a `print()` with the file path so file-sharing can pick it up. Common chart types: - **Bar charts** for category comparisons - **Line charts** for time series / trends - **Scatter plots** for correlations - **Histograms** for distributions - **Heatmaps** for correlation matrices - **Pie charts** only when there are ≤6 categories ### 5. Output - Print key findings as text in `code_interpreter` stdout. - Save any generated files (charts, processed CSVs) to `/tmp`. - Reference file paths in your response so the user can download them via the file-sharing capability. - If the analysis produces a transformed dataset, save it as `/tmp/<descriptive_name>.csv`. ### 6. Chaining This skill works best when combined with: - `code_interpreter` — runs the actual Python code - `file-sharing` — delivers charts and processed files to the user - `rag_search` — retrieves internal data or context before analysis ## Constraints - Max execution time: 30 seconds per code block - Pre-installed libraries: pandas, numpy, matplotlib. Additional libraries can be installed at runtime via pip. - Files must be written to `/tmp` - Keep DataFrames under ~1M rows for responsive performance ## Wealth Management Analysis Patterns When analyzing financial or portfolio data, consider these domain-specific techniques. **Note:** For client-specific portfolio reviews (where the user references a client by name or ID), prefer the **portfolio-review** skill which integrates directly with the CRM and provides a structured review format. Use **data-analysis** for: - General-purpose financial calculations not tied to a specific CRM client - Ad-hoc quantitative analysis requested by the user - Data the user provides directly (CSV, inline, uploaded file) - Advanced statistical techniques beyond what portfolio-review covers Techniques: - **Risk-adjusted returns**: Sharpe ratio = (portfolio_return - risk_free_rate) / portfolio_std_dev - **Alpha / Beta**: Compute portfolio beta against benchmark; alpha = actual_return - (risk_free + beta × (benchmark_return - risk_free)) - **Sector/asset class attribution**: Break down returns by sector contribution - **Correlation matrix**: Cross-asset correlations using a heatmap - **Drawdown analysis**: Maximum peak-to-trough decline - **Monte Carlo simulation**: Use `numpy.random` for forward-looking return distributions (always disclaim as illustrative) - **Stress testing**: Apply historical scenarios (e.g., 2008 GFC, 2020 COVID) to current holdings ## Example User: "Analyze this sales data and show me a monthly trend chart" Steps: 1. Use `code_interpreter` to load the data with pandas 2. Compute monthly aggregations 3. Generate a line chart with matplotlib, save to `/tmp/monthly_sales_trend.png` 4. Print summary statistics 5. Reply with findings and the chart file path
Voir sur GitHub