返回博客
StatsPAIAI AgentPythonCausal InferenceEconometrics

StatsPAI:为 Agent 时代设计的计量工具包

2026-04-04Bryce Wang
StatsPAI:为 Agent 时代设计的计量工具包
bash
pip install statspai
python
import statspai as sp

一个为 AI Agent 时代设计的 Python 计量经济学与因果推断开源工具包。150+ 个函数,统一 API,MIT 协议。

StatsPAI 的核心定位:面向 Agent 开发的计量包。 当 Claude Code、Codex、Cursor 等 AI 编程工具越来越多地参与实证研究,底层需要一个统一、稳定、接口标准化的 Python 统计包来执行计算。StatsPAI 就是为这个场景而生的——既给研究者用,更给 Agent 调。

为什么是 Python

Stata 和 R 在实证领域积累深厚,但它们都是专用语言。Python 是通用编程语言,这带来一个决定性的优势:新算法的实现速度远快于 Stata 和 R。

Stata 的新方法要等 StataCorp 官方发版或社区写 ado 文件。R 的新包要经过 CRAN 审核流程。而 Python 生态里,一篇因果推断新论文发出来,借助 AI 编程工具,几天内就能把算法实现出来、测试好、发布到 PyPI。scikit-learnPyTorchtransformers 这些包的迭代速度已经证明了这一点。

StatsPAI 的目标就是把这种速度优势用在实证研究领域:借助 AI 编程,快速实现前沿算法,让研究者和 Agent 都能第一时间用上。

而且 Python 天然连接着数据工程、机器学习和云计算。一个研究者用 pandas 清洗数据,用 sp.dml() 跑双重机器学习,用 PyTorch 训练自定义模型,全在同一个环境里完成,不需要在软件之间导数据、切语言。这是 Stata 和 R 给不了的体验。

StatsPAI 包在做什么

做实证研究的人对 Stata 和 R 都不陌生。Stata 40 年积累了一套高度统一的计量命令体系,从 regxtregivregress,语法一致,用起来很顺。R 的 CRAN 上有几十个因果推断包——fixestdidrdrobustgrf——方法前沿且覆盖广,新论文的方法实现经常先在 R 社区落地。

Python 这边,数据科学的基础设施早就是行业标配了——pandasscikit-learnTensorFlowPyTorch,成为 AI 行业的基石。但到了实证研究,一直缺一个统一方便的工具。statsmodels 管回归,linearmodels 管面板,EconML 管异质处理效应,differences 管 DID,各写各的 API,各出各的结果格式,做一篇论文要装一堆包,自己当胶水工,过程繁杂,劳神费心。

StatsPAI 做的事情就是借鉴主流统计软件的优点,把 Stata 的命令体系和 R 的因果推断方法覆盖度,统一到 Python 的一个包里:

python
import statspai as sp

# 经典计量
sp.regress("wage ~ edu + exp", data=df, robust='hc1')
sp.ivreg("wage ~ (edu ~ parent_edu) + exp", data=df)
sp.panel(df, "wage ~ edu + exp", entity='id', time='year', model='fe')

# 因果推断
sp.did(df, y='wage', treat='policy', time='year', id='worker')
sp.rdrobust(df, y='score', x='running_var', c=0)
sp.synth(df, treat_unit=1, outcome='y', time='year', unit='id')

# ML 因果
sp.dml(df, y='wage', treat='training', covariates=['age', 'edu'])
sp.causal_forest("y ~ treatment | x1 + x2 + x3", data=df)

# 所有结果,同一套接口
result.summary()
result.plot()
result.to_docx()       # Word
result.to_latex()      # LaTeX
result.cite()          # 方法对应的 BibTeX

# 出版表格一行搞定
sp.modelsummary(r1, r2, r3, output='results.docx')

所有函数共享一套 API 设计,所有结果返回统一的 CausalResult 对象,出版级表格直接导出 Word、Excel、LaTeX、HTML。Stata 用户看到 sp.regress()sp.margins()sp.test() 会觉得熟悉,R 用户看到 sp.callaway_santanna()sp.rdrobust() 也不会陌生。

方法覆盖

150+ 个公共函数,以下是按类别的概览:

经典计量regress, ivreg, panel, heckman, qreg, tobit, xtabond

DID 全家族did, callaway_santanna, sun_abraham, bacon_decomposition, honest_did

断点回归rdrobust, rdplot, rddensity

匹配与加权match (PSM / Mahalanobis / CEM), ebalance

合成控制synth, sdid

ML 因果dml, causal_forest, metalearner (S/T/X/R/DR), tmle, aipw, deepiv

神经因果tarnet, cfrnet, dragonnet

因果发现notears, pc_algorithm

策略学习policy_tree, policy_value

更多dose_response, multi_treatment, lee_bounds, manski_bounds, spillover, g_estimation, bunching, mc_panel, causal_impact, mediate, bartik, conformal_cate, bcf

后估计margins, test, lincom, oster_bounds, sensemakr, evalue, hausman_test, het_test, reset_test, vif

稳健性自动化(Stata 和 R 都没有的一键方案)

  • spec_curve() — 规范曲线 / 多元宇宙分析
  • robustness_report() — 自动换标准误、缩尾、加减控制变量、子样本
  • subgroup_analysis() — 异质性分析 + 森林图 + Wald 检验
**出版表格** — modelsummary, outreg2, sumstats, balance_table, tab, coefplot, binscatter

面向 Agent 的设计

AI Agent 做实证研究时,工作流分两层:Skill 编排"做什么",统计包执行"怎么做"。

一个 Skill 写着"跑 Callaway-Sant'Anna 交错 DID → 检验平行趋势 → 导出 Word 表格",Agent 底层需要调用具体的 Python 函数。如果底层是七八个散装包,Agent 要在不同的 API 之间来回切换、适配格式。如果底层是 StatsPAI,就是三行 sp.xxx() 的事。

StatsPAI 在设计上就考虑了 Agent 调用的场景:

  • 统一的函数签名 — Agent 不需要记住每个包不同的参数风格
  • 标准化的结果对象 — 所有方法返回同一种对象,下游处理可以标准化
  • 内置的出版输出.to_docx().to_latex() 直接可用,不需要额外拼接
  • 方法级引用.cite() 返回 BibTeX,方便自动生成参考文献
随着 Agent 在学术研究中的角色越来越重,底层统计包的统一性和可靠性会变得越来越关键。这是 StatsPAI 最核心的长期价值。

时间线

  • 2025.07 — StatsPAI v0.1.0 发布 PyPI。开源先行,从经典计量和出版表格做起
  • 2025.08 — StatsPAI Inc. 注册。给开源项目一个持续投入的主体
  • 2025.12CoPaper.AI 上线。基于 StatsPAI 构建的 AI 实证研究合著平台
  • 2026.04 — v0.3.1。三次大版本迭代,150+ 函数,经典计量到前沿 ML 因果基本覆盖
先有包,再有公司,最后有产品。StatsPAI 永远 MIT 协议,永远开源。

接下来

StatsPAI 在快速迭代中,目前的 150+ 常用函数是起步,而且每周都有大量的新功能上线。

近期方向:

  • 性能 — 大规模面板数据的计算效率,向 Stata 编译后端和 R fixest 看齐
  • 方法补全 — 调查数据(survey design)、空间计量经济学、结构估计,把 Stata 和 R 仍然领先的领域补上
  • 生态集成 — 和 pandasscikit-learnPyTorch 更深度地融合,快速推动 AI 与因果推断的融合
  • AI 适配 — 为 Agent 和 Skills 提供结构化的函数文档和标准化接口,降低 AI 调用的门槛
  • 前沿算法快速落地 — 发挥 Python + AI 编程的速度优势,新论文发出来就跟进实现
**StatsPAI 定位是成长为 Python 实证研究领域的基础设施级项目——类似 scikit-learn 之于机器学习、pandas 之于数据处理的角色。这需要时间,也需要社区的力量。目前整个生态正处于快速成长期,每个版本都在加入新的方法、优化已有的实现、打磨 API 的一致性。我们会保持这个节奏。**

参与

StatsPAI 是一个开放的生态,所有形式的参与都受欢迎:

  • 使用pip install statspai,在你的下一个实证分析里试试
  • 反馈 — 在 GitHub Issues 告诉我们哪里不对、哪里可以更好
  • 建议 — 你最想要什么方法?什么功能?告诉我们
  • 贡献 — Fork & PR,一起来写

GitHub: github.com/brycewang-stanford/statspai

CoPaper.AI: copaper.ai

StatsPAI Inc. · Stanford REAP Program