r-econometrics について
r-econometricsは、経済学研究者向けに因果推論やパネルデータ分析のRコードを生成するスキルです。IV、DiD、RDDを扱い、診断、頑健またはクラスター標準誤差、論文向けの出力を含みます。
主な機能
- 01IV、DiD、RDDの分析コード生成
- 02fixestによる推定
- 03研究設計に応じた診断
- 04頑健標準誤差とクラスター標準誤差
- 05回帰表と可視化の作成
- 06仕様と仮定の記録
活用シーン
- 01パネルデータによる処置効果の推定
- 02IV分析の操作変数の検証
- 03DiDの平行トレンドの評価
- 04論文掲載用の回帰表の準備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ meleantonio/ awesome-econ-ai-stuff --skill r-econometricsインストール後、Claude Code で/r-econometricsを入力して読み込まれたか確認します。
同梱ファイルindex.md
詳細
R 計量経済学
目的
このスキルは、操作変数法(IV)、差の差法(DiD)、回帰不連続デザイン(RDD)など、R を使った厳密な計量経済分析を経済学者が行えるよう支援します。適切な診断と頑健な標準誤差を含む、論文掲載に適したコードを生成します。
使用する場面
- 因果推論分析を行うとき
- パネルデータで処置効果を推定するとき
- 論文掲載に適した回帰表を作成するとき
- 現代的な計量経済学の手法(二方向固定効果、イベントスタディ)を実装するとき
手順
ステップ 1:研究デザインを理解する
コードを生成する前に、ユーザーに次のことを尋ねます。
- 識別戦略は何ですか?(IV、DiD、RDD、単純回帰)
- 観測単位は何ですか?(個人、企業、国・年など)
- どの固定効果が必要ですか?(個体、時間、二方向)
- 標準誤差はどのようにクラスター化しますか?
ステップ 2:分析コードを生成する
研究デザインに基づいて、次の要件を満たす R コードを生成します。
fixestパッケージを使用する - パネルデータ向けの最新かつ高速で、機能が豊富なパッケージです- 適切な診断を含める:
- IV:第 1 段階の F 統計量、弱操作変数の検定
- DiD:平行トレンドの可視化、イベントスタディのプロット
- RDD:バンド幅の選択、密度検定
- データ構造に適した頑健な標準誤差/クラスター化標準誤差を使用する
modelsummaryまたはetableを使って、論文掲載に適した出力を作成する
ステップ 3:出力を構成する
必ず次を含めます。
# 1. Setup and packages
# 2. Data loading and preparation
# 3. Descriptive statistics
# 4. Main specification
# 5. Robustness checks
# 6. Visualization
# 7. Export results
ステップ 4:ドキュメントを追加する
次の内容を説明するコメントを含めます。
- 各仕様を選択した理由
- 主要な係数の解釈
- 限界と仮定
プロンプトの例
- 「州と年の固定効果を含め、州レベルでクラスター化した DiD 分析を実行してください」
- 「Z を操作変数として、X が Y に与える効果を推定してください」
- 「年ごとの処置効果を示すイベントスタディのプロットを作成してください」
- 「最適なバンド幅を選択してシャープ RDD を実行してください」
出力例
# ============================================
# Difference-in-Differences Analysis
# ============================================
# Setup
library(tidyverse)
library(fixest)
library(modelsummary)
# Load data
df <- read_csv("data.csv")
# Prepare treatment variable
df <- df %>%
mutate(
post = year >= treatment_year,
treated = state %in% treatment_states,
treat_post = treated * post
)
# ----------------------------------------
# Main DiD Specification
# ----------------------------------------
# Two-way fixed effects
did_model <- feols(
outcome ~ treat_post | state + year,
data = df,
cluster = ~state
)
# View results
summary(did_model)
# ----------------------------------------
# Event Study
# ----------------------------------------
# Create relative time variable
df <- df %>%
mutate(rel_time = year - treatment_year)
# Event study regression
event_study <- feols(
outcome ~ i(rel_time, treated, ref = -1) | state + year,
data = df,
cluster = ~state
)
# Plot coefficients
iplot(event_study,
main = "Event Study: Effect on Outcome",
xlab = "Years Relative to Treatment")
# ----------------------------------------
# Robustness: Alternative Specifications
# ----------------------------------------
# Different clustering
did_robust <- feols(
outcome ~ treat_post | state + year,
data = df,
cluster = ~state + year # Two-way clustering
)
# ----------------------------------------
# Export Results
# ----------------------------------------
modelsummary(
list("Main" = did_model, "Two-way Cluster" = did_robust),
stars = c('*' = 0.1, '**' = 0.05, '***' = 0.01),
output = "results/did_table.tex"
)
要件
ソフトウェア
- R 4.0+
パッケージ
fixest- 高速な固定効果推定modelsummary- 論文掲載に適した表tidyverse- データ操作ggplot2- 可視化
次のコマンドでインストールします。
install.packages(c("fixest", "modelsummary", "tidyverse"))
ベストプラクティス
- 処置割り当てのレベルで、必ず標準誤差をクラスター化する
- DiD デザインでは事前トレンド検定を実行する
- IV では第 1 段階の F 統計量を報告する(10 を超えることが望ましい)
- パネルデータでは
lmよりfeolsを使用する(より高速で、機能も豊富です) - 仕様の選択をすべてコードコメントに記録する
よくある落とし穴
- ❌ 標準誤差を適切なレベルでクラスター化していない
- ❌ IV 推定で弱い操作変数を無視する
- ❌ 処置時期がずれる場合に TWFE を使用する(代わりに
didまたはsunab()を使用してください) - ❌ 頑健性チェックを報告しない
参考文献
- fixest のドキュメント
- Cunningham(2021)『Causal Inference: The Mixtape』
- Angrist と Pischke(2009)『Mostly Harmless Econometrics』
変更履歴
v1.0.0
- IV、DiD、RDD に対応して初回リリース
コメント
Markdown 対応