全部版块 我的主页
› 论坛 › 计量经济学与统计论坛 五区 › 计量经济学与统计软件 › Stata专版
92 3
2026-11-09

一个 135.5 MB 的压缩包,10 页 README,Stata 代码齐全,数据也附了一部分。但这套材料真正卡住复现的地方不在代码:论文的核心分析跑在 1900 至 1940 年美国完整计数人口普查微观数据上,那批数据不能随包分发,只能在美国 NBER 的安全服务器上运行。读懂这一点,再决定要不要下这 135 MB。

 

这是 Abramitzky、Boustan、Giuntella 三人为《The Economic Journal》论文《Enclaves and Assimilation in the Age of Mass Migration: Evidence from Ethnic Catholic Churches》提交的复现包,稿件号 MS 20251181,2026 年 10 月 30 日以 v1 发布在 Zenodo,挂在 Economic Journal 的复现材料社区下,资源类型标为 Dataset。

 

压缩包里到底有什么

 

记录页列了两个文件:3-replication-package.zip,135,477,210 字节;README.pdf,353,348 字节,10 页。前者是全部代码、文档与可分发数据,后者就是下面反复引用的那份说明。

 

README 给的目录结构是刻意压平的,所有路径自包含、自动识别操作系统,入口只有两个 do 文件:

 

  • master_reproduce_all.do:从原始普查一路跑到表图
  • master_all.do:从已有的分析数据跑构建、主表、主图

 

下面是六个目录。cleaning_renamed/ 放构建脚本(build_*.do);preparatory_files/ 放原始数据链,包括教会数据清洗、地理编码、普查区与六边形网格的交叉表、姓名索引与收入分数;data/ 放分析数据集和逐文件清单;output/ 与 figures/ 放产出;maps/ 与 maps_chicago/ 放两组地图工程。

 

表图脚本按论文编号平铺在根目录:table1.do 到 table6b.do、figure1.do 与 figure4.do 到 figure8.do、tableA1.do 到 tableA18_panelB.do、figureA6.do 到 figureA10.do。README 声称覆盖正文表 1—
6、附录表 A.1—A.18,正文图 1 与图 4—
8、附录图 A.6—A.10。

 

三个阶段怎么串起来

 

数据流是三段,README 画了链路图。

 

第一步在 preparatory_files/,由 master_prep_repro.do 驱动:先用 abeclean 做姓名清洗,再生成六边形面板,最后做跨普查年的人口链接,产出落在 prep_build/。第二步在 cleaning_renamed/,由 master_build.do 依次跑 build_.do,把原始面板变成 data/ 下的分析数据集。第三步是 table.do 与 figure*.do,产出写进 output/(txt、xml、xlsx、tex)和 figures/(png,地图另出 pdf)。

 

时间预算 README 写得很直白:全链从零跑约 66 至 80 小时,其中姓名清洗一步就占 35 小时以上,1940 年那份文件约 190 GB;只跑分析阶段是几小时,瓶颈在读 40 至 55 GB 的链接文件;单张表或单张图,在数据已建好的前提下几秒到几分钟。中间产物 prep_build/ 约 200 GB,所以包所在的磁盘至少要留 250 GB。测试环境是 NBER 集群 nber6 节点,24 核、377 GB 内存,内存峰值 150 至 200 GB。

 

哪些数据在包里,哪些必须申请

 

这是决定能不能复现的关键,README 把三类分得很清楚。

 

包内自带六个数据集,每个都有 .dta 和 .csv 两份:churches_matched_with_covariates(1900—1940 匹配教区及邻里协变量)、enrollment_church(教区学校入学,用于表 A.
1)、enrollment_census(1920 年完整普查的学区入学汇总,可在 NBER 上用 build_enrollment.do 重建)、biblical_firstnames 与 saints_firstnames(圣经名与圣徒名两份姓名分类)、updated_income_score(按出生地×年龄×州×职业的预测收入分数)。

 

受限的有两项,都在 NBER 服务器上,不随包分发:IPUMS 完整计数人口普查(1900—1940),以及由它派生的个人层面链接文件(Census Linking Project 与 ABE-EI 匹配结果)。

 

公开但要注册的有一项:IPUMS USA 公开样本,免费账号即可,包内用的是 16.0 版。注意公开样本与完整计数不是同一份数据,不能相互替代。

 

剩下的是作者提供或作者自建的中间件:以国籍代码命名的外国人名指数(FNI)八份文件,434 意大利、453 德国、455 波兰、465 俄罗斯,_1 为男性、_2 为女性;犹太人名指数(JNI)一份;nearest_church_allyears 的教会距离面板;各城市各年份的普查区—六边形交叉表;以及 Autor 与 Dorn 的 occ1990dd 职业任务指标。

 

一台普通电脑能跑出什么

 

README 第 4.3 节给了一句明确的答案:只用包内自带文件,Figure 1(figure1.do)和 Table A.1(tableA1.do)在任何机器上都能跑通。其余每一张表、每一张图都要读 Stage 2 从受限输入重建出来的分析数据集。

 

这句话值得单独拎出来,因为它决定了这个包对大多数人的实际用途:可以核对输入、可以复算那两张、可以读代码看变量怎么造,不能指望在自己电脑上重跑全文。README 自己在开头也强调了同一点,公开数据集是让审稿人检查分析输入、跑局部子集用的,完整链条在 NBER 服务器上完成。

 

要装什么、装到什么版本

 

Stata 18 MP。每个 do 文件都写了 version 18,推荐 MP 版,因为几个构建步骤要处理 15 至 58 GB 的文件。README 补了一句实测:用 StataNow 19.5 MP 在 version 18 下也端到端跑通过。

 

七个外部命令,master_all.do 的前言会自动装,手动装就是 ftools、reghdfe、outreg2、coefplot、center、psmatch2、did_imputation。

 

Python 3 是可选的,只用来重画附录图 A.2 至 A.5 的飞地地图,依赖 pandas、openpyxl、matplotlib,输入和脚本都在 maps/ 里自包含。芝加哥地图(图 2 至
3)另算,是 ArcGIS 工程,地理编码那一步是手动操作,脚本里做了说明。

 

路径不用改:每个 do 文件头部会自己判断 Windows 还是 Linux,本地与集群共用一套代码。

 

表号错位:最容易白跑一趟的地方

 

README 第 5 节自己标了感叹号:论文 LaTeX 源里的表文件名与发表后的表号是相反的。

 

table5.do 产出发表版的 Table 5(意大利天主教堂邻近性),但它喂的是 tables/table6.tex;table6a.do 与 table6b.do 产出发表版 Table 6 的
A、B 两栏,喂的却是 tables/table5.tex。表 A.10 也是同类情况,对应的源文件叫 tableA2.tex。按文件名去对表号,会以为某张表没跑出来。

 

第二个容易漏的点是 Table A.3 的拼写变体合并:合并规则写在 tableA3.do 里,同时导出一份 tableA3_top200_check.txt 作为审计清单,用来核对哪些名字被并成一组。Table A.9 另有一份 tableA9_summary.txt 存放该表的汇总行。

 

第三个是变量缩写。所有 do 文件都开了 set varabbrev on,代码里写 speak_eng,实际指向生成的 speak_english;income 指向 income_score_1。删掉生成变量那几行 gen,回归会因为找不到变量直接报错,而报错信息里显示的还是缩写名,不容易联想到原因。

 

复现到哪一步为止

 

作者在 README 第 2.4 节做了权利声明,这段建议原样读完:作者证明对论文使用的全部数据有合法访问与使用权限,但没有再分发或公开受限完整计数普查微观数据及其派生个人文件的权限,因此这些数据不在包内,复现按第 4 节在 NBER 安全服务器上进行。作者自己转录的教区记录(来源是公开的《Official Catholic Directory》)与随包发出的汇总文件可以再分发,每个 .dta 都配了一份 .csv。

 

所以这个包的许可要分两层看。Zenodo 记录页标的是 CC BY 4.0,覆盖代码、文档与作者可再分发的数据;IPUMS 与 NBER 的受限数据仍按各自的数据使用协议,不因这个 CC 许可而放开。

 

版本与引用方面,v1 发布于 2026 年 10 月 30 日,记录 DOI 是 10.5281/zenodo.23811165,概念 DOI 是 10.5281/zenodo.23811164。引用时用概念 DOI 更稳,指向的永远是最新版。记录页当前统计为 45 次浏览、30 次下载,其中独立下载 26 次。

 

────────────────

需要 ZIP 与 README 的直达地址、记录元数据、目录树与表图对应清单的,回帖后可见。


游客,如果您要查看本帖隐藏内容请回复

把经管之家装进你常用的 AI 智能体中

一键快捷安装经管之家 MCP/技能,让 AI 帮你查教程、找数据、读论坛帖子。

检索、阅读公开帖子不收费,安装可申请领取:3 通用积分+100 论坛币+3 元论坛资金

请点击查看安装教程与福利 →

说明: AI 算力按所用平台规则计算;附件按原帖条件获取;福利领取条件以活动页面为准。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
4 小时前
受限数据那段说清楚了,谢谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2 小时前
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

半小时前
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群