盈彩

  • <tr id='igMEsK'><strong id='igMEsK'></strong><small id='igMEsK'></small><button id='igMEsK'></button><li id='igMEsK'><noscript id='igMEsK'><big id='igMEsK'></big><dt id='igMEsK'></dt></noscript></li></tr><ol id='igMEsK'><option id='igMEsK'><table id='igMEsK'><blockquote id='igMEsK'><tbody id='igMEsK'></tbody></blockquote></table></option></ol><u id='igMEsK'></u><kbd id='igMEsK'><kbd id='igMEsK'></kbd></kbd>

    <code id='igMEsK'><strong id='igMEsK'></strong></code>

    <fieldset id='igMEsK'></fieldset>
          <span id='igMEsK'></span>

              <ins id='igMEsK'></ins>
              <acronym id='igMEsK'><em id='igMEsK'></em><td id='igMEsK'><div id='igMEsK'></div></td></acronym><address id='igMEsK'><big id='igMEsK'><big id='igMEsK'></big><legend id='igMEsK'></legend></big></address>

              <i id='igMEsK'><div id='igMEsK'><ins id='igMEsK'></ins></div></i>
              <i id='igMEsK'></i>
            1. <dl id='igMEsK'></dl>
              1. <blockquote id='igMEsK'><q id='igMEsK'><noscript id='igMEsK'></noscript><dt id='igMEsK'></dt></q></blockquote><noframes id='igMEsK'><i id='igMEsK'></i>
                教育装备采购ㄨ网
                第六届图书馆论坛580*60

                【Stata专栏】使用 Monte Carlo 模拟计算』功效,第三部分:线性和逻辑回∴归

                教育装备采购▲网 2021-11-10 09:08 围观808次

                  文 / Chuck Huber, Director of Statistical Outreach at StataCorp

                【Stata专栏】使用 Monte Carlo 模拟计算功♀效,第三部分:线性和↙逻辑回归

                  导读

                  在之前的文章中,作者演示了如何利用蒙特卡罗模拟计算功率的t检验的示例,以及如何把你的模拟集成到Stata的power命令中。本文,作者将向您展示如何为线※性和逻辑回归模型执行这些任务。线性回归和逻辑∑ 回归程序的策略和整体结构类似于t检验示例。不同点在于数据模拟和用于检验零假设的模型。

                  在模拟回归模型时,选择『现实的回归参数是很具有挑战性的。有时,pilot data 或historical data可以提▽供思路,但通◎常我们会考虑一系列我们认为有意义的参数值。本文将通过基于全国健康㊣ 和营养检查调查 (NHANES) 数据做为示例。可以通↘过键入webuse nhanes2来下载这些数据的一个版本。

                  线性回归示例

                  假设您正在计划一项systolic blood pressure (SBP) 研究,并且您认为年龄和性别之间存在相互作用。NHANES 数据集包括变量bpsystol (SBP)agesex。下面,我们拟合了一个线性回归模型,其中包ζ 括一个agesex的交互项,并且所有参数估计的p值都等于 0.000。这并不●奇怪,因为该数据集ζ 包含 10,351个观测值。当其他一〓切保持不变时,随着样↓本量变大,p值变小。

                【Stata专栏】使用 Monte Carlo 模拟计算』功效▆,第三部分:线∮性和逻辑回归

                  也许您没有资源为您的研【究收集 10,351名参与者的样本,但如果希望有 80%的功◆效来检测0.35的交互参数。您的样本需要多大?

                  让我们首先根据 NHANES 模型的参数估计创建单个伪随机数据集。我◥们通过清除Stata的内存开始◇下面的代码块。接下来,我们将随机种子设置为 15,以便我们可以〓重现我们的结果并将观察次○数设置为 100。

                【Stata专栏】使用 Monte Carlo 模◣拟计算功效,第三部分:线性和⊙逻辑回归

                  代码块的第四行生成一个名为age的变量 ,其中包括从区间[18,65]上的均匀分布中提取的整数。

                  第五行使用概率等于0.5的 Bernoulli distribution 生成一个名为female的︽指示变量。回想一下,一次试验的◤二项式分布等价于 Bernoulli distribution 。

                  第☉六行生成了 age和 female交【互作用的变量。

                  第七行生成一个变量e,即回归模型的误↑差项。生成了误■差由均值为 0且标准差为 20的正态分布。值 20基于从NHANES回归模√型估计的root MSE

                  代码块的末行基于我们的模拟变量和来自NHANES回归模型的参数估计的线性组合生成变量sbp

                  以下是使用regress拟合我们的模拟数据的线性模型的结果。参数估计与我们的输入参数有些不同,因为我只生成了一个相对较小的数据集。我们可以通过增加∩样本大小、抽※取大量样本或两者兼而有之的方式来减ㄨ少这种差异。

                【Stata专栏】使用 Monte Carlo 模拟〒计算功效∏,第三部分:线性和逻辑回∑归

                  交互作用项的p值等于 0.420,这在 0.05水平上不具有统计∞显着性。显然,我们需要更大的样本量。

                  我们可以使用回归模型中的p值来检验交互项为零的原假设。这在本例中是可行的,因为我们只测试一个参数。但是,如果我们的交互包含一▅个分类变量,例如race,我们将不得不同时测试多个参←数。有时我们希望同时测试多个变量。

                  Likelihood-ratio tests可以检验多▓种假设,包括同时检验多▆个参数。我将在本示例☆中向您展示如何使用Likelihood-ratio tests,因为它将涉及到您在研▓究中可能遇到〇的其他假设。如果您不熟悉它们,您可以在Stata Base Reference Manual中阅读有关■likelihood-ratio tests的更多信息。

                  下面的代码块显示了用于计算likelihood-ratio tests的五个步骤中的四个。我们将检验交互项的系数为零的原假设。首行拟》合包含交互项的“full” 回归模型。第二行将完整模型的估计值存储在内存中。“full”这个名字是任意的。我们可以给这个模型的①结果命名任◆何我们喜欢的→名字。第三行拟合了省略交互项的 “reduced” 回归模型。第四行将简化模型的结ㄨ果存储在内存中。

                【Stata专栏】使用 Monte Carlo 模拟计算︻功效,第三部分:线性和逻辑回々归

                  第五步∑ 使用lrtest计算完整模型与简化模型的 likelihood-ratio test。该检验产生0.4089p值,接近上述回归输出中报告的 Wald 检验。我们不能拒绝交互参数为零的原假设。

                【Stata专栏】使用 Monte Carlo 模拟计算卐功效,第三部分:线性和逻ㄨ辑回归

                  您可以↓键入return list以查看存储在标量r(p)中的p值。您可ω 以使用r(p)来定义reject,就像我们在⌒t测试程序中所做的那样。

                【Stata专栏】使用 Monte Carlo 模拟计算♀功效,第三部分:线性和逻ξ辑回归

                  模拟数据和检验回归♂模型的零假设比t检验稍微复杂一些。但是编写一个程序来自动化这个过程几乎与t测试▼示例相同。让我们考虑下面的代码块,它定义了程序simregress

                【Stata专栏】使用 Monte Carlo 模拟计算功ζ效,第三部分:线性和逻辑☆回归

                  前三行以capture programprogramversion开头,与我们的t测试程序基√本相同。

                  该程序『的语法部分与t测试程序的语法部分类似,但输入参数的名称显然不同。已经包◎含了样本大小、alpha 级别和基本回归参数的输入参数。我们没有为模型中的每个可能的参数都包含一个输入参数,但如果你愿意,也可以这样做。例如,在我们的程序中将变量age的范围“hard coded”为18到 65。但是,如果您愿意,也可以包含︾age上限和下限的输入参◥数。我还发现包含描述参ζ 数名称的注释很有帮助,这样就不会产生歧︾义。

                  下一段㊣代码嵌入在一个 “quietly”的块中。像set obsgenerateregress这样的命令将输出发★送到结果窗口和日志文件(如果你打开了)。将这些命令放在一个quietly块中会抑制该输出@。

                  我们已经编写了创建随机数据和检验零假设的命令。因此,我们可以将该代码复制到quietly块中,并用语法定义的相应本地宏替换任何输入参数。例如,我已将set obs 100更改为set obs 'n',以便观察的数量将由语法指定的输入参∞数设置。我还为输入参数指定¤了与模型中模拟变量相同的名∮称。所以'age'*agesyntax定义的输入参数'age'和模拟生成的变々量age的乘积。

                  likelihood-ratio test的p值存储在标量r(p)中,我们的程序〓返回标量reject ,与在我们的t测试程序中完全一样。

                  下面,我使用simulate运行simregress 100次并summarized变量reject。结果表明,给定 100名参与者的样本和关于模型的其他假设,我们将有16%的功效来检测√ 0.35的交互参数。

                【Stata专栏】使用 Monte Carlo 模拟←计算功效,第三部分:线∮性和逻辑回归

                  接下来,我们编写一↑个名为№power_cmd_simregress的程序,以便我们可以将simregress集成到 Stata 的power命令中。power_cmd_simregress的结构与上一◥篇文章中的power_cmd_ttest相同。首先,我们定☉义语法和输入参数并指定它们的默认值。然后,我们运行模拟并总结变∮量reject。之后,我们返回结果。

                【Stata专栏】使用 Monte Carlo 模拟计算▲功效,第三部分:线性和→逻辑回归@

                  我们还编写一个名为power_cmd_simregress_init的程序。回想↓一下上一篇文章,该程序将允许我们为一系列输入参数值运行power simregress,包括双引号中列出的「参数。

                【Stata专栏】使用 Monte Carlo 模拟计算功〗效,第三部分:线性和逻辑◥回归

                  现在,我们已经准备好使Ψ用power simregress了!下面的输出显示了当interaction参数等于 0.20.4时的模拟功效,增量为0.05,对于大≡小为 400500600700的样本。

                【Stata专栏】使用 Monte Carlo 模拟计◤算功效,第三部分:线性和逻▽辑回归

                  图 1 以图形方式显示了结果。

                【Stata专栏】使用 Monte Carlo 模拟计♀算功效,第三部分:线性和逻辑回归

                图 1:回归模型中交互项的估计功效

                  表格和图表向我们展示了可以产生 80%功效的几种参数组合。700名参与者的样本将使我们▓有大约 80%的功效来检测0.30的interaction参数。600名参与者的样本将使我们有▆大约80%的能←力来检测 0.33的interaction参数。500名参与⊙者的样本将使我们有大约80%的功效来检测大▆约 0.37的interaction参数。400名参№与者的样本将使我们有大约 80%的能力来检测 0.40的interaction参数。我们对样本大小的选择基于我们想要检测的interaction参数的大小。

                  此示例侧重于具有两个协变量的回归模■型中的交互项。但是你可以修改这个例子来模拟你能想象到的几乎任何类型的回归模型的能力。在规划模拟时,我建◣议执行以下步骤:

                1. 写下感兴趣的回归模型,包括』所有参数。

                2. 指定协变量的详细信息,例如age 范围或females比例。

                3. 找到或考虑模型中参数的①合理值。

                4. 假设替代假№设,模拟单个※数据集,并拟合模ㄨ型。

                5. 编写一个程序来创建数据集、拟合模型并使用simulate 来测试程序。

                6. 编写一个程序命︻名为power_cmd_mymethod,它允许运行您的power模拟。

                7. 编写一个名为power_cmd_ mymethod_init的程序,以便您可以@ 将 numlists 用于所№有参数。

                  让我们尝试使用这种方法↓进行逻辑回归模型。

                  逻辑∑回归示例

                  在此示例中,让我们假设您正计划对hypertension  ( highbp )进行研究。hypertension是二元的,因此我们将使用逻辑回归来拟合模型并使用优势比作为效应大小。

                  第 1 步:写下模型

                  模拟功率的首步是写下▲模型。logit(highbp)=β0+β1(age)+β2(sex)+β3(age×sex)

                  我们需要创建变量highbpagesex和交互项age×sex。我们还需要指定合理的〇参数值β0,β1β2, 和 β3.

                  步骤 2:指定协变量的详细信息

                  接下来,我们需要考虑模型中的协变量。什么样的年龄值对我们的研究是合理的?我们对老年人感兴√趣吗?年ζ轻的成年人?假∑ 设我们对 18到 65岁之间的︻成年人感兴趣。年龄分※布在区间 [18,65]内是否可』能是均匀的,或者我们是否期望在年龄中间出现驼峰状◎分布范围?我们还需要考虑研究中男性和女性的比例。我们是否可能对 50%的男性和 50%的女性进行抽样?这些是我们在规划功率计算时需要问自己●的问题。

                  假设我『们对 1865岁之间的成年人感兴趣,并且我们相信年龄是均匀分布的。我们还假设样本将是 50%的女性。一旦★我们为agesex创建变量,就很容易计算交ω 互项age×sex

                  步骤 3:为参数指定合理的值

                  接下来,我们需要考虑模∑型中参数的合理值。我们可以根据文献综述、试点研究结果或『公开数据来选择参数值。

                  我选择再次使用 NHANES 数据,因为@它包括变量hypertension ( highbp )agesex

                【Stata专栏】使用 Monte Carlo 模拟计算功々效〗,第三部分:线性和逻辑回归

                  输出模型中每个变量的优势比估计值。优势比是指数参数估计(that is,

                【Stata专栏】使用 Monte Carlo 模拟∏计算功效,第三部分:线性和逻辑回归

                  ,所以我们可以▲指定优势比的自然对数

                【Stata专栏】使用 Monte Carlo 模拟计ξ算功效,第三部分:线性和逻辑回归

                  作为我们功率模拟中的参数。例如,上面输出中年龄的优势比○的估计值为 1.04,因此我们可以指定

                【Stata专栏】使用 Monte Carlo 模拟计算功效◥,第三部分:线性和逻辑回归

                  我们也可以指定

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  和

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  第 4 步:Simulate a dataset assuming the alternative hypothesis, and fit the model

                  接下来,我们根据我们对替代假◤设下的模型的假设创建ξ 一个模拟数据集。下面的代码块︾与我们用来为线性回归模型创建数据的代码◥几乎相同,但↑有两个重要的区别。首先,我们使用generate xb创建参数和模拟变量的线性组合。参〓数表示为使用NHANES数据估计的优势比的自然对数。其次,我们使用rlogistic(m,s)从变量xb创建二进制因变量highbp

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  然后,我们可以将⊙逻辑回归模型拟合到我们的模拟数据中。

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  第 5 步:编写程序以创建々数据集、拟合模型并使用模拟测试程序

                  接下来,让我们编□写一个程序,在 alternative hypothesis下创建数据集,拟合逻◤辑回归模型,检验零假设,并使用simulate运行程序的多次迭代。

                  下面的代码块包含名为simlogit的程序的语法。语法命令中的默认参数↘值是我们使用 NHANES数据估计的优势比。我们使用lrtest来检验ぷ零假设,即age×sex的优势比等于 1

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  然后,我们使用simulate默认参数值▓运行simlogit100 次。

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  simulate将假设检验的结果保存到名为reject的变量中。reject的平均值是假设样本量为 500 人时,我们估计↑检测age×sex交互项的优势比为 1.03的能力。

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  第 6 步:编写一个名为power_cmd_simlogit的程序

                  如果我们只对一组特定的假设感【兴趣,我们可以停止我们》的快速模拟。但是编写一△个名为power_cmd_simlogit的附加∩程序很容易,它允许我们使用 Stata 的power命令为一系列样本大小创建表格和→图形。

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  第 7 步:编写一个名为 power_cmd_simlogit_init的程序

                  编写一个名为power_cmd_simlogit_init的程序也很容易,它允许我们为模型中参数的一系列值模拟功率。

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                  使用power simlogit

                  现在,我们可以使用power simlogit来模拟各种假设的功率。下面的示例模拟了一系列样本大@ 小和效果▅大小的功效。样本大№小从400到 1000人不等,以 200为增量。以及age×sex交互项的优势比范围⊙从 1.02到 1.05,增量为 0.01

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                【Stata专栏】使用 Monte Carlo 模拟计算功效,第三部分:线性和逻辑回归

                图 2:逻辑回归模型中交互项的估计功效

                  上面的表格和■图表表明,使用样本大小和效应大小的四种组合可实现 80%的功效。鉴于我们〖的假设, 我们将至少有 80%的功效来检测 600800和 1000的样本量的优▽势比为 1.04。我们将有80%的功效来检测1.05的优势比,样本量为 400人。

                  在这篇文『章中,我们展示了如何在线性和逻辑回◆归模型中模拟交互项的统计功效。您可以根据自己的目→的修改上面的示例。

                  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。

                点击进入北京友万信息科』技有限公司展台■查看更多 来源:教育装备采购网 作者:北京友万信息科技有限公司 责任编辑:逯红栋 我要投稿
                普教会专题840*100

                相关阅读

                版权与免责声明:

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

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

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

                2022云展会300*245