Compétence Analytics
Analyse de science des données flexible qui fonctionne avec n'importe quel ensemble de données. Découverte automatique du schéma, recommandation de visualisations et export au format create-figure.
Démarrage rapide (Tout ensemble de données)
cd .pi/skills/analytics
./run.sh describe data.jsonl
./run.sh chart data.jsonl --name distribution_channel -o chart.json
cd .agent/skills/create-figure
./run.sh metrics -i /path/to/chart.json --type bar -o chart.pdf
Le Pipeline Transparent
Toutes données (JSONL/JSON/CSV)
│
▼
┌─────────────────────────────────┐
│ analytics describe │ ← Découvre le schéma, recommande des graphiques
│ "5 colonnes catégorie, 2 │
│ numériques, 1 temporelle" │
│ Recommandations : │
│ - distribution_channel (bar) │
│ - trend_by_date (line) │
│ - heatmap_hour_x_day │
└─────────────────────────────────┘
│
▼
┌─────────────────────────────────┐
│ analytics chart/group-by │ ← Génère les données du graphique au format create-figure
│ --name distribution_channel │
│ -o chart.json │
└─────────────────────────────────┘
│
▼
┌─────────────────────────────────┐
│ create-figure metrics │ ← Produit des PDF/PNG de qualité publication
│ -i chart.json --type bar │
│ -o channel_distribution.pdf │
└─────────────────────────────────┘
Commandes
Découverte (Commencez ici)
| Commande | Description |
|---|
describe <file> | Découvrir le schéma, détecter les types de colonnes, recommander des graphiques |
./run.sh describe sales.jsonl
Analyse Flexible
| Commande | Description |
|---|
group-by <file> | Grouper par n'importe quelle colonne avec agrégation |
stats <file> | Statistiques numériques et corrélations |
chart <file> | Générer une spécification de graphique pour create-figure |
./run.sh group-by data.jsonl --by channel --for-figure -o by_channel.json
./run.sh group-by data.jsonl --by category --agg price --func sum
./run.sh stats data.jsonl --columns revenue,cost,profit
./run.sh chart data.jsonl --name distribution_channel -o chart.json
Données Horodatées (sorties ingest-*)
| Commande | Description |
|---|
insights <file> | Résumé d'analyse complet (tendances, sessions, motifs) |
trends <file> | Tendances de visualisation avec moyennes mobiles |
sessions <file> | Détection de sessions et analyse de binge |
time-patterns <file> | Distribution horaire/journalière |
evolution <file> | Comment les préférences changent au fil du temps |
Sortie
| Commande | Description |
|---|
export <file> | Exportation groupée de tous les graphiques standard |
report <file> | Rapport narratif de style Horus |
Formats Pris en Charge
| Format | Extension | Détection automatique |
|---|
| JSONL | .jsonl | JSON délimité par ligne |
| JSON | .json | Tableau ou {data: [...]} |
| CSV | .csv | Valeurs séparées par des virgules |
Détection des Types de Colonnes
La commande describe détecte automatiquement :
| Type | Logique de détection | Graphiques recommandés |
|---|
| temporel | datetime64, chaînes de type date | line, area, heatmap (axe temporel) |
| numérique | int64, float64 | histogram, scatter, stats |
| catégoriel | faible cardinalité (≤20 uniques) | bar, pie, heatmap |
| booléen | dtype bool | pie (vrai/faux) |
| texte | chaînes de haute cardinalité | nuage de mots, top-N |
Recommandations de Graphiques
Basées sur les types de colonnes, analytics recommande :
| Motif de données | Type de graphique | Commande create-figure |
|---|
| 1 catégoriel | bar, pie | metrics --type bar |
| 1 temporel | line | training-curves |
| 2 catégoriels | heatmap | heatmap |
| temporel + catégoriel | heatmap | heatmap |
| 2+ numériques | matrice de corrélation | heatmap |
| 1 numérique | histogram | metrics --type bar |
Flux de Travail pour Agent
Pour qu'un agent projet analyse n'importe quel ensemble de données et le visualise :
result = run("./run.sh describe data.jsonl --json")
recommendations = result["recommendations"]
chart_name = recommendations[0]["name"]
cmd = recommendations[0]["create_figure_cmd"]
run(f"./run.sh chart data.jsonl --name {chart_name} -o chart.json")
run(f"cd .agent/skills/create-figure && ./run.sh {cmd} -i chart.json -o chart.pdf")
Exemples
Données de Vente E-commerce
./run.sh describe orders.jsonl
./run.sh group-by orders.jsonl --by category --agg amount --func sum --for-figure -o revenue_by_category.json
cd .agent/skills/create-figure
./run.sh metrics -i revenue_by_category.json --type bar -o revenue.pdf
Historique YouTube (ingest-yt-history)
./run.sh insights ~/.pi/ingest-yt-history/history.jsonl
./run.sh export ~/.pi/ingest-yt-history/history.jsonl -o ./charts --for-figure
cd .agent/skills/create-figure
./run.sh heatmap -i charts/heatmap.json -o viewing_heatmap.pdf
Données de Réponse API
./run.sh describe api_logs.json
./run.sh stats api_logs.json --columns response_time
./run.sh group-by api_logs.json --by endpoint --agg response_time --func mean --for-figure -o latency.json
Dépendances
dependencies = [
"pandas>=2.0.0",
"typer>=0.9.0",
"rich>=13.0.0",
]
Intégration avec Horus
./run.sh insights ~/.pi/ingest-yt-history/history.jsonl --horus
Erreurs Courantes
./run.sh stats data.jsonl --columns revenue,cost
./run.sh describe data.jsonl
./run.sh group-by data.jsonl --by date --agg views | ./run.sh metrics --type pie