同一份简历,三个版本:一份不写代词,一份写 she/her,一份写 they/them。7,970 份这样的申请组成 3,985 个配对,投向美国六个都市区的 15 种岗位,看招聘方是否回话。这份复现包把配对数据、变量构造与全部表图的 R 代码一起放出来。
论文是《Taryn versus Taryn (she/her) versus Taryn (they/them): A Field Experiment on Pronoun Disclosure and Nonbinary Hiring Discrimination》,已被 Journal of Human Resources 有条件接收。复现材料 2026 年 10 月 25 日发布在 Zenodo,记录号 23632034,许可 CC BY 4.0。
两个压缩包、三个 CSV、两个脚本
code.zip 只有两个文件:main_paper_analysis.R(890 行,出主文表
1、表
2、表
4、表 5,图 1 与图 2 的三个面板)和 appendix_analysis.R(2,647 行,出附录表 A9—A26 与图 A4)。data.zip 三个 CSV:
| 文件 | 行 | 列 | 内容 |
| experiment_data.csv | 7,970 | 226 | 申请层面数据:结果变量、处理指示、控制项、交互项、观测权重 |
| county_data.csv | 1,882 | 25 | 县级人口、地理与选举数据,供主文表 1 与附录表 A15 |
| occupation_cbsa_data.csv | 90 | 5 | 15 种职业×6 个都市区的雇佣数与两套权重,供表 A25—A26 |
脚本按论文表图编号分节,找某张表直接跳到同名注释即可,不用猜哪个函数出哪个结果。
三个变量就把设计说清了
明细数据的一行是一份申请,不是一对。application_id 标识岗位与配对,所以在申请层面数据里出现两次;做配对固定效应时用它,做聚类时也用它。
处理变量三个:pronouns 分 no pronouns、binary、they/them 三类;pronouns_a 对两个披露臂都取 1;pronouns_nb 只对 they/them 取 1。结果变量 pap_positive 表示雇主有积极回应。写回归时,pronouns_nb 与 pronouns_a 两个系数合起来才是"披露代词相对不披露"的平均效应,代码里专门做了一条系数和为零的检验。
配对结构决定了三组样本不等:3,985 个配对里每对只有一份不写代词的申请,另一份随机是 she/her 或 they/them,所以对照组 3,985 份、they/them 臂 2,695 份、binary 臂 1,290 份。把三组当成等分随机分组会算错。
三组的原始回应率差多少
按 CSV 直接数,pap_positive 的未加权比例是:不写代词 31.29%(3,985 份)、she/her 29.38%(1,290 份)、they/them 25.83%(2,695 份),全样本 29.13%。they/them 相对不写代词低 5.46 个百分点,she/her 低 1.91 个百分点。
这是描述值,不是论文的处理效应估计。论文在表 4 里逐列加控制项与固定效应,数字会变;用这份表可以快速判断数据读得对不对,别拿它当结论引用。
表 4 的五列是这样叠上去的
五列共用同一个基础式 pap_positive ~ pronouns_nb + pronouns_a,标准误一律聚类到 application_id。
第一列只放两个处理指示;第二列加入简历控制项与雇主控制项,简历侧含相关工作年限及其平方、是否在职、学历与在校表现、技能标签、投递次序与滞后投递量,雇主侧含估计应聘人数、相对收入与收入差、是否漏报收入;第三列换成 occupation、location、ra_name 三组固定效应;第四列同时上控制项与这三组固定效应;第五列改用 application_id 配对固定效应,把同一岗位同一配对内的比较做干净。
每列跑完都跟一条 pronouns_nb + pronouns_a = 0 的线性假设检验,报出两个披露臂合起来是否显著不为零。这一列递进的设计本身就是个模板:从裸差分到配对内比较,看系数怎么移动。
表 5 分的是哪三个维度
异质性按三处切:当地政治环境(共和党票仓的都市区与其余地区)、岗位工资区间、是否面向客户。做法是在基础式上加交互项,例如 pronouns_nb_republican_loc + pronouns_a_republican_loc + republican_loc,然后分别检验主效应与交互项是否为零。
附录里还有几张值得单独看的:A16 收的是估计不精确的零结果,A18 用异方差 logit 做 Neumark 偏差校正,A19 是检测检验,A20 换了性别歧视的对照设定,A21—A24 把主文与异质性结果各做一遍稳健性。
跑之前要改一行路径
作者参考环境是 R 4.5.2(Windows x64),需要 16 个包:ggplot2、dplyr、fixest、marginaleffects、broom、ggsignif、conflicted、tibble、sandwich、Rchoice、car、nlWaldTest、survival、scales、miceadds、MASS。结果打印在控制台,不落盘成表。
两个脚本开头都有一行 project_dir <- "PATH/TO/REPLICATION_PACKAGE",必须改成三个 CSV 所在目录的完整路径;三个 CSV 要放在同一层,脚本按文件名直接读,没有相对路径兜底。不改这一行,脚本第一步就找不到文件。
表 3 与附录 A1—A8 没有代码段
README 写明主脚本产表
1、表
2、表
4、表 5,附录脚本产 A9—A26,也就是说主文表 3 与附录前八张表没有对应代码。想核这几张表只能回论文原文看定义,别在脚本里翻。这不影响主结果复现,但对外说"全部表图都能重跑"就过头了。
美国招聘场景,结论别直接搬
六个都市区是 Colorado Springs、Denver、Provo、Salt Lake City、Seattle、Spokane,选举数据与人口结构都进了异质性分析。这套设计能学的是配对申请、回应率因变量、交互检验与表图对应的做法;至于代词披露在国内招聘里意味着什么,这份数据回答不了。
────────────────
需要记录页与两个压缩包的直达地址、226 列的字段清单、表图与代码段对照,以及三组回应率的计算口径,回帖后可见。
把经管之家装进你常用的 AI 智能体中 一键快捷安装经管之家 MCP/技能,让 AI 帮你查教程、找数据、读论坛帖子。 检索、阅读公开帖子不收费,安装可申请领取:3 通用积分+100 论坛币+3 元论坛资金 请点击查看安装教程与福利 → 说明: AI 算力按所用平台规则计算;附件按原帖条件获取;福利领取条件以活动页面为准。 |