可重复性研究:如何保证你的研究结果可重现?

本文探讨了可重复性研究的重要性,强调了合理安排研究工作、良好的代码写作习惯和自动化输出在保证研究可重复性方面的关键作用。通过提供任务管理、文件组织和代码规范的建议,帮助研究人员构建可重复的研究流程,从而提高团队协作效率和研究成果的可靠性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

连玉君 (中山大学,arlionn@163.com , 主页:lianxh.cn)
陈鑫梅 (暨南大学,1562922593@qq.com )

特别声明: 本文部分内容摘译自以下文章:

连享会 - 效率分析专题,2020年5月29-31日

主讲嘉宾:连玉君 | 鲁晓东 | 张宁
详情微信版PDF版

不知大家是否有如下经历:

  • 作为论文作者: 收到审稿意见,要求大幅修改 (e.g., 更新一年的数据)。然而,在电脑了找了一上午,也没有找到三个月前跑回归时的 dofile。
  • 作为导师: 繁忙的 6 月过去了,学生们都去投行了。我们静下心来,把 1-2 篇优秀的硕士论文拿出来修改,准备投稿。却发现当时学生并没有把原始数据和代码留下来,而且,学生的邮件回复说:「老师,我换了新电脑,以前的文件都没了,……」。此时,你开始犹豫要不要投稿。你不知道论文中是否有「刻意追星」行为,你更担心外审意见回来后,你该如何对着学生的论文另起炉灶地跑一次回归?
  • 作为合作者: 你的合作者想了解一下你的实证分析过程,以便确认一些关键环节的处理是否妥当。然后,你们视频通话,你用了一上午的时间给他演示如何一步一步「点菜单」,以便得到你想要的结果。期间,你不停地重试,回忆……,因为,你其实也很难记清楚当时你点了哪些奇怪的「按钮」,然后就得到了那些看起来还不错的结果。

如果你经历了上述囧境,但仍然像「寒号鸟」那样心存侥幸,那你的痛苦历程其实才刚刚开始。

本文便是综合了一些前辈们的经验,为大家分享一些基本的工作原则,以便日后能够做「可重复的研究」。好处在于:一方面,我们能避免上述窘境,另一方面,也是更重要的,你的团队会因此形成「知识积累」:团队新成员总能够在老成员的工作基础上快速跟进;作为信息枢纽的导师,也更容易组织大家分享彼此的新知,形成良好的团队协作氛围。 当然,从更为高大上的角度来讲,你若通过 - Harford Dataverse - https://dataverse.harvard.edu/dataverse 之类的网站公布原始数据和程序,对于推广研究成果,提高论文的引用率也会有很大的帮助,你也会因此而结识一批志同道合的同仁 (ps, 「连老师的链接」 页面提供了很多可以获取重现论文资料的网站的链接。微信用户可以点击底部 「阅读原文」 查看)。

在此前的直播课「我的特斯拉-实证研究设计」 (课程主页:https://gitee.com/arlionn/Live) 中,我就专门花了 10 几分钟的时间介绍可重复研究的重要性,以及如何重现论文,如何获取重现论文的数据和程序等问题。

1. 简介:何谓可重复性研究 ?

地质学家约翰·克拉伯特 (John Claerbout) 将「可重复研究」定义为“其他科学家复制 (论文) ”的可能性。

Hamermesh (2007) 建议区分两个概念:「纯复制」 (“pure replication”) 和「科学复制」 (“scientific replication”):

  • 「纯复制」 是指几乎完全复制手头研究的能力,主要用于验证。
  • 「科学复制」是指在其他数据库上重复使用现有的研究材料,并将其视为稳健性测试或拓展原始研究工作。

对于许多研究项目来说,如果该项目的作者为所有其他研究人员提供了用以完全重现论文结果的所有资料 (数据和程序),则该项目被认为是可重复的。

当然,本文的目的不是为了辨析这些定义,我们更关注的是与这些概念相关的实际问题。我们的目标是通过提供建议,方法和工具来提高研究的可重复性。

先前的论文试图将可重复性研究的概念界定为一套适用于特定情况和软件的精确规则或原则 (Gentzkow & Shapiro, 2014; Sandve et al. , 2013; Hinsen, 2015) 。 我们仅提出三个主要和简单的原则,以从更广泛的意义上增强研究的可重复性。这些原则是:

  • 合理安排研究工作
  • 写代码的良好习惯
  • 自动化输出

简言之,「良好的写代码习惯」可以保证你的代码具有可读性、易读性,这便于你的合作者与你协作修改和完善代码,也有助于你日后更新这些代码。「自动化输出」则可以保证从计量软件到文字排版软件之间的无缝连接,一方面节省了体力,另一方面则减少了编排过程中导致的错误。

连享会直播 - 生存分析 (Survival Analysis) 专题

主讲嘉宾:王存同教授 (中央财经大学)
2020年6月6日,详情

2. 合理安排研究工作

一个研究项目可能是一个复杂的过程,Long (2009) 将其设定为一个周期:计划、组织、计算、记录。项目之初,计划相当笼统,随着项目的进行而变得更加精确。某些阶段可以顺序执行,而其他阶段则可以重叠。因此,最好在项目开始时考虑并计划组织。

你可以列一个日程表,也可以画一个思维导图。总之,要做到心中有数,避免过度自信和过度拖延。

2.1 组织任务和文档

管理项目的一种好方法是预先了解项目的所有任务及其内容、成果、组织和目标。了解所涉及的不同人员及其在项目和任务期限中的作用。安排工作,记录已完成的任务,放弃的方向,新方向等,文件是关键要素,文件的缺失将导致研究无法重现。

需要说明的是,最好建立起「版本控制」的理念,也就是说,在修改文稿和代码的过程中,可以将关键版本保留下来,而不要始终都只在一个版本上进行。这样,日后回顾起来,就比较容易了解到自己走过哪些弯路,哪些工作受限于当时的条件无法推进,但可以留待日后进行;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值