教育装备采购网
第七届图书馆 校体购1

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

教育装备采购网 2021-11-05 09:07 围观1181次

  文 / Chuck Huber, Director of Statistical Outreach at StataCorp

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  导读

  在上一篇文章中,作者向您展示了如何使用蒙特卡罗模拟计算t检验的功效。在这篇文章中,将向您展示如何将您的模拟集成到 Stata 的power命令中,以便您可以轻松地为一系列参数值创建自定义表格和图形。

  在规划科学研究时,统计学家很少计算一组假设的power。我们通常计算一系列参数值的功效,并选择一组在参数值和逻辑上可行的现实假设。例如,下面我使用power onemean来计算从 50 到 100 以 10 为增量的样本大小的功效。该表显示了假设的参数值,包括 alpha 水平、零假设和替代假设下的均值、标准化每个样本数量的均值 (delta)、标准差和功效之间的差异。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  我还使用了下面的graph选项来绘制样本大小范围内的功效。然后,我可以使用表格和图表来选择满足我的研究功效要求的样本量。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  「图 1:n = 50 到 100 的估计功效,增量为 10」

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  除了样本数量之外,power命令还允许您输入其他参数的值范围,例如标准差、均值或 alpha 水平。而power可将结果创建为表格和图表。

  还可以将自己的方法添加到强大的命令套件中。让我们将上一篇文章中的t测试模拟程序添加到power中,看看它是如何工作的。

  回想一下我上一篇文章,我们创建了一个名为simttest的程序来计算t检验的功效。该程序接受五个输入参数, 创建一个伪随机数据集,检验原假设,并返回假设检验的结果。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  我们使用simulate多次运行程序并将结果保存到一个名为reject的变量中。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  然后,我们将power 计算为原假设被拒绝的次数比例。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  您可以通过创建名为power_cmd_ mymethod的程序将此模拟方法添加到power,其中mymethod是 power命令的名称。让我们调用程序power_cmd_simttest

  下面的代码块定义了power_cmd_simttest。请注意它与我们的simttest程序相似。它从capture program drop开始,然后是program,然后是version 15.1。接下来,我们使用syntax定义输入参数,就像我们在simttest中所做的那样。在这里,我添加了一个名为reps()的新输入参数,它是模拟的重复次数。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  程序的中间部分运行模拟并总结结果。simulatesummarize都是quietly状态的,这抑制它们输出的显示。这里模拟运行程序simttest并将结果保存到变量reject,就像以前一样。请注意,simulatesimttest中的所有输入参数都是使用syntax定义的本地宏。summary计算reject的平均值并将其存储在标量r(mean)中。

  代码块的底部返回power和其他参数。power返回变量reject的平均值,其他参数只是从syntax传递过来的局部宏。

  现在您可以通过输入power simttest来运行模拟。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  成功了!我们也可以为一系列样本量制作表格和图表。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  「图 2:n = 50 到 100 的模拟功效,增量为 10」

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  如果您希望为其他参数(例如m0masd)输入一系列值,则需要再编写一个小程序。该程序必须命名为power_cmd_ mymethod _init

  下面的代码块定义了power_cmd_simttest_init并以capture program dropprogram开始,就像我们的其他程序一样。请注意,程序定义以选项sclass开头。sreturn local pss_colnames这行代码在双引号中列出的参数输出表初始化列。sreturn local pss_numopts这行代码允许您指定放置在双引号中的参数numlists

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  现在,您可以使用power simttest来计算假设不同替代假设的一系列均值的功效。您甚至可以针对不同的样本量执行此操作。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  您可以通过在graph选项中指定xdimension来绘制功效分析的结果。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  「图 3:假设 n=75 和 n=100 ,ma =72(1)75 的模拟功率」

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  本文向您展示了如何使用 Monte Carlo 模拟计算功率以及如何将这些模拟集成到power中。我从一个简单的t测试示例开始,以便我们可以专注于编程并使用power onemean检查我们的工作。

  Stata软件订购:

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  如需订购Stata V17全新版软件,请联系Stata中国授权经销商及合作伙伴北京友万信息科技有限公司(www.uone-tech.cn)。我司拥有强大的售后服务团队,聚合国内一线Stata行业专家为客户提供优质的技术支持服务,并帮助中国用户建立完善的软件服务体系。手机/微信:18610597626 邮箱:crystal@uone-tech.cn。

【Stata专栏】使用 Monte Carlo 模拟计算功效,第二部分:使用功效运行模拟

  专注分享商业数据分析、金融数据分析、应用统计分析、知识图谱、机器学习、计量经济、人工智能、网络爬虫、自动化报告与可重复研究等热门技术内容。定向培养Stata、Python、R语言数据人才,助力产学研政企商协同发展,为中国大数据产业蓄能。合作热线:010-56548231 邮箱:info@uone-tech.cn。

点击进入北京友万信息科技有限公司展台查看更多 来源:教育装备采购网 作者:北京友万信息科技有限公司 责任编辑:张肖 我要投稿
校体购终极页

相关阅读

版权与免责声明:

① 凡本网注明"来源:教育装备采购网"的所有作品,版权均属于教育装备采购网,未经本网授权不得转载、摘编或利用其它方式使用。已获本网授权的作品,应在授权范围内使用,并注明"来源:教育装备采购网"。违者本网将追究相关法律责任。

② 本网凡注明"来源:XXX(非本网)"的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,且不承担此类作品侵权行为的直接责任及连带责任。如其他媒体、网站或个人从本网下载使用,必须保留本网注明的"稿件来源",并自负版权等法律责任。

③ 如涉及作品内容、版权等问题,请在作品发表之日起两周内与本网联系,否则视为放弃相关权利。

校体购产品