Analyse de données R

VérifiéPrudence

Analyse de données de bout en bout en R, suivant les conventions du projet (here, arrow, fixest, modelsummary), avec revue de code et sorties de qualité publication.

Spar Skills Guide Bot
Data & IAAvancé
06/08/2026
Claude Code
#r#econometrics#reproducible-research#data-analysis#fixest

Recommandé pour

Synthèse automatique

Exécute une analyse de données R de bout en bout pour le projet sewage, en écrivant des scripts conformes aux conventions du projet et en produisant des tableaux et figures prêts pour publication.

Points forts

  • Applique automatiquement les conventions R du projet : here::here(), pipe natif, arrow/parquet, fixest et modelsummary.
  • Couvre le cycle complet : lecture du contexte, écriture du script, revue de code, exécution et synthèse des résultats.
  • Produit des sorties normalisées : tables LaTeX, figures PDF/PNG et objets de régression RDS.
  • S'appuie sur les scripts existants et la documentation du manuscrit pour rester cohérent avec l'analyse en cours.

Limites

  • Très lié au projet sewage : chemins, sous-dossiers et conventions sont codés en dur.
  • Suppose que l'environnement R, les jeux de données et les packages requis sont déjà installés et accessibles.
  • La revue de code intégrée ne remplace pas une validation économétrique ou une vérification indépendante des résultats.
Quand l'utiliser

À utiliser lorsqu'il faut écrire ou modifier un script d'analyse R pour le projet sewage, estimer une spécification ou générer des tableaux et figures à partir des données finales.

Quand l'éviter

À éviter pour des analyses R hors du projet sewage, pour du nettoyage de données en amont du pipeline ou lorsque vous ne disposez pas des données et de l'environnement du projet.

Analyse de sécurité

Prudence
Score qualité90/100

The skill is a legitimate data-analysis workflow with no malicious exfiltration, destructive commands, obfuscation, or safety-disabling instructions. However, it grants Bash and can execute generated R scripts, and it permits Agent use without constraints; the hardcoded local path is a minor privacy/portability issue. These justify caution rather than risky.

Points d'attention
  • •Allows Bash and instructs running generated R scripts via Rscript, which executes arbitrary code with the user's permissions.
  • •Contains a hardcoded absolute local path (/Users/jacopoolivieri/...) that exposes a username/project path and is non-portable.
  • •Allows the Agent tool without describing how or when subagents should be used, expanding execution capability beyond the documented workflow.
  • •Writes and edits files and outputs without explicit overwrite/confirmation safeguards.
Comment cette analyse est faite

Exemples

Hedonic regression
Run a hedonic regression of log_price on spill_count with LSOA and year-quarter fixed effects, then export a modelsummary table to output/tables/hedonic_main.tex and save the model RDS.
Repeat-sales specification
Add a repeat-sales specification to the analysis using data/final/repeat_sales.parquet, follow the project conventions, and produce the regression table and figure.
Descriptive script
Write an R script in scripts/R/09_analysis/01_descriptive/ to create scatter plots and a map from data/final, using here and arrow, and save outputs to output/figures/.

name: data-analysis description: End-to-end R data analysis for the sewage project. Writes analysis scripts following project conventions (here::here, arrow/parquet, fixest, modelsummary, native pipe), runs code review, and produces publication-ready tables and figures. This skill should be used when asked to "run an analysis", "estimate the model", "add a specification", or "write an R script". argument-hint: "[dataset path, analysis goal, or specification description]" allowed-tools: ["Read", "Grep", "Glob", "Write", "Edit", "Bash", "Agent"]

Data Analysis

Run an end-to-end data analysis following sewage project conventions.

Input: $ARGUMENTS — a dataset path, analysis goal description, or specification to estimate.


Project-Specific Context

Analysis Organisation

Scripts in scripts/R/09_analysis/ by approach:

  • 01_descriptive/ — Maps, scatter plots, Google Trends
  • 02_hedonic/ — Cross-sectional hedonic regressions
  • 03_repeat_sales/ — Repeat-transaction regressions
  • 04_long_difference/ — 250m grid-level long differences
  • 05_news/ — DiD and event studies with media coverage
  • 06_upstream_downstream/ — Directional spillover
  • 07_dry_spills/ — Dry spill analysis

Datasets

  • data/final/ — Analysis-ready datasets
  • data/processed/ — Intermediate pipeline outputs (parquet)
  • All data loaded via arrow::read_parquet() or arrow::open_dataset()

Output Destinations

  • Tables: output/tables/*.tex (modelsummary → LaTeX with tabularray)
  • Figures: output/figures/*.pdf or *.png
  • Regression objects: output/regs/*.rds
  • HTML interactive: output/html_plots/

Required R Conventions

  • here::here() for all paths
  • Native pipe |>
  • fixest::feols() for regressions with vcov = "hetero"
  • modelsummary for table output (tabularray format, [H] placement)
  • arrow for parquet I/O
  • snake_case naming
  • forcats::as_factor() for factors

Workflow

Step 1: Context Gathering

  1. Understand the analysis goal from $ARGUMENTS
  2. Read existing analysis scripts in the relevant subdirectory for patterns
  3. Read scripts/R/utils/spill_aggregation_utils.R if spill metrics are involved
  4. Check data/final/ for available datasets
  5. Read the relevant manuscript section in docs/overleaf/ if the analysis feeds into the paper

Step 2: Write Analysis Script

Follow the analysis script structure:

# ================================================================
# [Descriptive Title]
# Purpose: [What this script does]
# Inputs: [Data files]
# Outputs: [Figures, tables, RDS files]
# ================================================================

# === 1. Setup ============================================

library(tidyverse)
library(fixest)
library(modelsummary)
library(arrow)
library(here)

# === 2. Data Loading =====================================

df <- read_parquet(here("data", "final", "dataset.parquet"))

# === 3. Main Analysis ====================================

model <- feols(
  log_price ~ spill_count | lsoa + year_quarter,
  data = df,
  vcov = "hetero"
)

# === 4. Tables and Figures ================================

modelsummary(
  list("Main" = model),
  output = here("output", "tables", "table_name.tex"),
  fmt = 3
)

# === 5. Export ============================================

saveRDS(model, here("output", "regs", "model_name.rds"))

Step 3: Code Review

After writing the script, review it against the 9 categories from /review-r:

  • Script structure, console hygiene, reproducibility
  • Function design, figure quality, data persistence
  • Comments, error handling, polish

Fix any Critical or Major issues before presenting.

Step 4: Run the Script

If the user wants execution:

cd /Users/jacopoolivieri/Library/CloudStorage/Dropbox/01_projects/sewage
Rscript scripts/R/09_analysis/[subdir]/[script_name].R

Step 5: Present Results

  1. Results summary — Key estimates with SEs and economic interpretation
  2. Script created — Path and description
  3. Output files — Tables and figures generated
  4. Code review notes — Any conventions to flag
  5. TODO items — Missing data, additional specifications needed

Principles

  • Reproduce, don't guess. If a specific regression is requested, implement exactly that.
  • Strategy alignment. If an analysis feeds into a manuscript section, the code must implement what the paper claims.
  • Publication-ready output. Tables and figures should be directly includable in the paper.
  • Follow existing patterns. Read neighbouring scripts in the same subdirectory for style consistency.
  • Save everything. Every regression object saved as RDS, every table as LaTeX, every figure as PDF.

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/r-data-analysis-msh3ut3a/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/r-data-analysis-msh3ut3a' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/r-data-analysis-msh3ut3a/download' --output '.skill-downloads/r-data-analysis-msh3ut3a/SKILL.md.part' && mv '.skill-downloads/r-data-analysis-msh3ut3a/SKILL.md.part' '.skill-downloads/r-data-analysis-msh3ut3a/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/r-data-analysis-msh3ut3a/SKILL.md' && test -s '.skill-downloads/r-data-analysis-msh3ut3a/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/data-analysis' && cp -R '.skill-downloads/r-data-analysis-msh3ut3a' '.claude/skills/data-analysis'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/r-data-analysis-msh3ut3a'

openskills read 'r-data-analysis-msh3ut3a'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/r-data-analysis-msh3ut3a/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires