精华内容
下载资源
问答
  • 2022-03-14 22:24:56

    用IV做2SLS回归时,需要对IV进行三个方面的检验:

    一、不可识别检验

    即检验工具变量的个数是否少于内生解释变量的个数,使用的统计量是Anderson LM 统计量/Kleibergen-Paap rk LM统计量。

    这里p值小于0.01说明在 1%水平上显著拒绝“工具变量识别不足”的原假设,也就是要求p值不能大于0.1。

    检验时加robust是Kleibergen-Paap rk LM统计量;不加robust是Anderson LM 统计量。

    也就是说在iid情况下看Anderson LM 统计量,在非iid情况下看Kleibergen-Paap rk LM统计量。

    二、弱IV检验

    弱IV是指IV与内生解释变量的相关性不强,微弱相关,弱IV会导致用IV估计的结果与用OLS,FE估计的结果相差很大,甚至符号完全相反。如果有较多工具变量,可舍弃弱工具变量,因为多余的弱工具变量反而会降低第一阶段回归的 F 统计量。

    弱IV的判断有以下四个标准:
    (1)偏R2,也就是Shea's partial R2,不过xtivreg2不汇报这个统计量,得用命令

    estat firststage, all forcenonrobust,汇报第一阶段的结果。

    (2)最小特征统计量,minimum eigenvalue statistic,这是Stock and Yogo (2005)提出来的,stata会在ivreg2中给出临界值。Staiger and Stock (1997)建议只要该值大于10就认为不存在弱IV。这个值用于iid的情况。

    (3)Cragg-Donald Wald F统计量,由Cragg and Donald (1993)提出,Stata在回归时会给出临界值。CDW检验一般过15%,10%的临界值就可以,过了5%的临界值更好。

    如果假设扰动项为iid,则看CDW检验统计量。如果不对扰动项作iid的假设,则看KP W rk F统计量。所以加r选项时才有KP W rk F统计量,不加则没有。不管加不加r选项,CDW统计量总有。通常建议加上r选项。

    (4)Kleibergen-Paap Wald rk F统计量。对于CDW统计量和KP W rk F统计量要从估计偏误和检验水平扭曲两个方面进行判断是否存在弱IV问题。

    一般情况下这四个值都会看,基本上几个值都是同向变化的。

    三、过度识别检验

    过度识别的前提是该模型至少是恰好识别的,也就是有效IV至少与内生解释变量一样多,愿假设是H0:所有IV都是外生的,拒绝愿假设意味着至少有一个IV不是外生的,与扰动项相关

    三个统计量:

    (1)Sargan统计量。Stata默认给出Sargan统计量。如果内生变量的数目和工具变量的数目完全相同。此时无需执行过度识别检验,因为模型是恰足确认的(equation exactly identified)。这里要求p大于0.1。

    (2)Hansen J统计量,加选项robust时汇报Hansen J统计量,不加robust选项时汇报Sargan统计量。也就是说iid时用Sargan统计量,非iid时用Hansen J统计量。

    (3)C统计量,加orthog(varlist),varlist为需要检验外生性的变量。与过度识别约束检验有关的另一个检验是对工具变量子集是否符合外生性假定的检验,可通过 difference-in-Sargan 统计量进行; 该统计量由两个 Sargan( 或 Hansen-J) 之差构成,也称为 C 统计量。

    xtivreg2 ln_Cash_ratio1 (lnnumber_in_10km=popnum) $control,fe cluster(stkcd) first endog(lnnumber_in_10km)    // 报告检验结果
    --- 结果读法 ---
      -- 相关性检验
         1. estat firststage 弱工具变量   ---> 若 F > 10 说明是强工具变量,好!
         
      -- 外生性检验
         2. estat overid 过渡识别检验  ---> 若 P > 0.05 说明工具变量外生,好!
         3. estat endog  Hausman 检验  ---> 若 P > 0.05 说明工具变量外生,好!

    更多相关内容
  • 工具变量读书笔记

    2020-12-17 15:15:31
    Watson, "Introduction to Econometrics (3rd Edition)"第12章工具变量(instrumental variable,IV)1、什么是工具变量工具变量是为了解决内生性问题。当回归变量X与误差项u相关(可能是因为遗漏变量、变量有测量...

    总结James H. Stock, Mark W. Watson, "Introduction to Econometrics (3rd Edition)"第12章

    工具变量(instrumental variable,IV)

    1、什么是工具变量?

    工具变量是为了解决内生性问题。当回归变量X与误差项u相关(可能是因为遗漏变量、变量有测量误差或者XY存在双向因果关系),工具变量把X变化中与u无关的那部分抽离出来。

    2、一般工具变量回归模型

    3、两阶段最小二乘法(two stage least square,TSLS)

    第一阶段,解释变量对工具变量进行回归,得到解释变量的拟合值(估计值);第二阶段,得到的解释变量拟合值对被解释变量进行回归,即为TSLS(2SLS)的回归结果。

    4、工具变量有效的两个条件及有效性检验

    一个有效的工具变量需满足工具变量的相关性和工具变量的外生性两个条件

    工具变量的个数要大于等于内生变量的个数

    检验工具变量的有效性

    假设一:工具变量的相关性

    如果工具变量和内生变量相关性很弱,则被称为弱工具变量。

    弱工具变量检验的经验法则:如果两阶段最小二乘法第一阶段F统计量小于10,则工具变量是弱的,此时的TSLS估计量是有偏的。

    解决办法:寻找其他较强的工具变量;改变估计方法。

    假设二:工具变量的外生性

    恰好识别(工具变量个数与内生回归变量个数一样):此时不能通过实证证明,只能通过专家观点以及对问题的认识

    过度识别(工具变量个数大于内生变量个数):J检验,将不同工具变量的估计量进行比较

    5、举例:香烟需求分析

    利用1985~1995年美国48个州的面板数据估计香烟的需求弹性

    因变量Q(州内每人购买的香烟包数),自变量P(包含税收的每包香烟的平均价格)工具变量 Sale Tax(香烟的消费税),IV只通过价格影响香烟的需求,与u无关

    考虑一个内生变量

    第一阶段:

    第二阶段:

    价格上涨1%,消费减少1.08%

    增加收入的外生变量和一个新的工具变量香烟专项税

    判断工具变量的有效性

    检验相关性:F值都大于10,说明两个工具变量都不是弱工具变量。

    检验外生性:(1)(2)恰好识别不能采用J检验,(3)J检验拒绝原假设(两个工具变量都是外生的)

    根据对问题的认识分析,消费税外生的可能性高于香烟的专项税。

    展开全文
  • stata 工具变量法【计量经济系列(七)】 1. 内生性 2. 工具变量3. 2SLS (二阶段最小二乘法) 4. 弱工具变量5. 工具变量外生性的过度识别检验 6. 豪斯曼检验6.1 传统豪斯曼 6.2 杜宾-吴-豪斯曼检验(DWH)

    stata 工具变量法【计量经济系列(七)】


        ʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞ
                     在这里插入图片描述在这里插入图片描述在这里插入图片描述


              在这里插入图片描述


    1. 内生性

    内生性即解释变量与扰动项相关,这样的情况比比皆是。
    内生性的主要来源包括遗漏变量偏差,联立变量偏差,测量误差偏差。

    解决内生性的主要方法之一是工具变量法。

    内生变量(endogenous variable):是由模型决定的变量。如被解释变量 和 与扰动项存在相关性的解释变量。
    外生变量(exogenous variable):由模型以外的因素决定的已知变量。如模型中的参数,以及其他与扰动项不相关的变量。


    2. 工具变量

    一个有效的工具变量应满足,
    ①工具变量与内生解释变量1相关。
    ②工具变量与扰动项不相关。

    关于如何获得工具变量
    寻找工具变量大致可以分为两步:
    ①列出与内生解释变量 相关的尽可能多的变量的清单
    ②从这一清单中剔除与扰动项相关的变量


    3. 2SLS (二阶段最小二乘法)

    工具变量法一般通过二阶段最小二乘法实现,2SLS
    第一阶段使用内生解释变量,对工具变量回归
    第二阶段使用解释变量对第一阶段回归的拟合值做回归

    阶条件:进行2SLS估计的必要条件是工具变量的个数不少于内生解释变量的个数。这个条件称为“阶条件”。

    根据阶条件是否满足可分为以下三种情况:
    (1)不可识别(unidentified):工具变量个数小于内生解释变量个数;
    (2)恰好识别( just or exactly identified):工具变量个数等于内生解释变量个数;(3)过度识别( overidentified):工具变量个数大于内生解释变量个数。
    在恰好识别与过度识别的情况下,都可以使用2SLS;但在不可识别的情况下,则无法使用2SLS。

    命令如下

    ivregress 2sls y x1 x2 (x3=z1 z2),robust first
    

    其中x1, x2是外生解释变量,x3是内生解释变量,z1,z2则是方程外的 工具变量。

    first表示显示第一阶段的回归结果


    4. 弱工具变量

    如果工具变量与内生解释变量仅微弱相关,则工具变量法估计的方差会很大,估计得就不准确。这样的工具变量被称为弱工具变量。

    检验是否存在若工具变量(做完2SLS回归后):

    原假设为:存在若工具变量。

    estat firststage
    

    对检验结果,使用的是一个经验规则:如果检验结果的F统计量大于10,则可以拒绝原假设,认为不存在弱工具变量。


    解决弱工具变量,方法有两种:
    ①寻找更强的工具变量
    ② 使用对弱工具变量更不敏感的“有限信息最大似然估计法”(Limited Information Maxi-mum Likelihood Estimation ,LIML)。在大样本下,LIML与2SLS渐近等价,但在弱工具变量的情况下,LIML的小样本性质可能优于2SLS。
    LIML命令在格式上与“ivregress 2sls”(二段最小二乘法)完全相同:

    ivregress liml y x1 ×2(x3 =z1 z2)
    

    5. 工具变量外生性的过度识别检验

    工具变量外生性,即 “工具变量与扰动项不相关” 的性质。
    工具变量的外生性是保证2SLS一致性的重要条件。如果所使用的“工具变量”与扰动项相关,则可能导致严重的偏差。

    工具变量外生性的过度识别检验的大前提是 该模型是恰好识别检验的,即有效工具变量数等于内生解释变量数。
    检验的原假设为:所有的工具变量都是外生的。(即所以的工具变量都与扰动项相关)

    estat overid
    

    6. 豪斯曼检验

    6.1 传统豪斯曼

    使用工具变量法的前提是存在内生解释变量,这也是需要检验的。

    由于扰动项不可观测,故无法直接检验解释变量与扰动项的相关性。但如果找到有效的工具变量,则可借助工具变量来检验解释变量的内生性。

    reg y x1 x2
    estimates store ols
    ivregress 2sls y x1 (×2=z1 z2)
    estimates store iv
    hausman iv ols, constant sigmamore
    

    首先做OLS回归,并把回归结果存储记为ols
    再做2SLS回归,并把回归结果记为iv
    然后进行豪斯曼检验。

    这是传统的豪斯曼检验,其在球形扰动项情况下才最有效率,不适用于异方差的情况。

    6.2 杜宾-吴-豪斯曼检验(DWH)

    在异方差的情景下,改进过的“杜宾-吴-豪斯曼检验”(DWH)则依然适用:

    异方差稳健的DWH检验:

    estat endogenous
    

    本次分享就到这里,小啾感谢您的关注与支持!
    🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ

    展开全文
  • 文章目录1 理论介绍1.1 Instrumental variable解释1.2 因果推断中:内生性的一个有意思的例子1.2 与代理变量(proxy variable)的对比1.3 连玉君老师的简易解读2 econML实现 DeepIV 同系列可参考: 因果推断笔记...


    同系列可参考:
    因果推断笔记——因果图建模之微软开源的dowhy(一)
    因果推断笔记—— 相关理论:Rubin Potential、Pearl、倾向性得分、与机器学习异同(二)
    因果推断笔记——python 倾向性匹配PSM实现示例(三)
    因果推断笔记——双重差分理论、假设、实践(四)
    因果推断笔记——因果图建模之微软开源的EconML(五)
    因果推断笔记——工具变量、内生性以及DeepIV(六)


    1 理论介绍

    参考:

    exogenous - 外生性
    endogenous - 内生性

    工具变量 (Instrumental variables) 的在效应估计的作用到底是什么?

    参考某知乎答主的对其在计量ols估计中的回答:
    “过滤器,把X 中和 随机扰动项 相关的部分过滤掉,只剩下正交的部分,这样OLS就又重振雄风了。工具变量就是这个过滤器。”

    因为工具变量对假设的要求非常严格,所以使用工具变量的时候,我们需要对它的种种限制保持警惕(虽然这一提醒对所有因果推断方法都适用)。

    1.1 工具变量的三个条件

    下图3.1 描绘了一项双盲随机试验, Z 是被试的分组情况(1:治疗组,0:安慰剂组), A 是被试的实际接受治疗情况(1:实际上接受治疗,0:实际上未接受治疗),Y 是结局,U 是所有能影响结局和被试配合程度的未测变量。

    如果我们想一致地估计 A对Y 的因果效应均值(ATE),那不管使用什么方法,我们都需要测量U(可以把U理解为控制变量), 并在我们的模型中调整U,由于U是未测的,所以这些方法只能得到有偏的估计。 但工具变量方法却并不一样,即使我们不能测量并调整U ,我们依然可以用这一方法去估计 A 对 Y 的效应均值。

    在这里插入图片描述
    那么对于工具变量 Z ,它需要满足以下三个条件:

    • (1) Z 和 A 相关;
    • (2) Z 仅通过 A 影响Y,而不能直接影响Y;
    • (3) Z 和 Y 没有共同诱因。

    对于图上这个双盲随机试验中, Z 就是一个工具变量。 我们逐个来看三个条件:Z

    • (1) 被分配到治疗组的被试更可能接受治疗,满足Z 和 A 相关,
    • (2) 这是一个双盲设计,满足Z 仅通过 A 影响Y,而不能直接影响Y
    • (3)治疗组的分配是随机的,不受任何其他因素影响,满足Z 和 Y 没有共同诱因。

    并且,在图 2.1 中,工具变量 Z 对实际治疗 A 有因果效应,我们将 Z 称作因果性工具变量。

    在观察性研究中,我们不能证明我们认为的工具变量 Z 是否是真正的工具变量,所以我们将 Z 称为候选工具变量。
    我们能做的,就是利用各专业知识说明候选变量 Z 为什么能满足条件 (2)和(3) 。
    这就如同前几章我们用专业知识为我们的模型假设辩护一样。 —先验知识/业务经验的重要性。

    1.2 工具变量的效应估计

    如果 Z 满足工具变量的三个条件(以及一个额外条件,我们将在下一小节讨论),并且是一个二分变量,那么在加法尺度上,工具变量的效应估计就可以表示为:
    在这里插入图片描述

    为了直观地理解这一表达式,我们可以再思考一下上一小节中的随机试验。这个表达式中的:

    • 等式左边:是A对Y的效应
    • 等式右边-分子:是 Z 对 Y 的效应,也被称为治疗意向效应,Z 是工具变量,Y是“果”
    • 等式右边-分母:是 Z 对 A 的效应,表示被试的配合程度,Z是工具变量,A是“因”

    如果被试完全配合研究人员,那么分母就等于1, A 对 Y 的效应就等于 Z 对 Y 的效应(完美的随机实验)。如果配合程度不佳,那么分母就会趋近于 0(小于1),从而有 A 对Y 的效应大于 Z 对 Y 的效应。
    不配合的被试越多,这两个效应之间的差距也就越大。 这一效应估计不需要调整任何混杂,而是通过给治疗意向效应乘以一个膨胀系数得到。
    被试的配合程度越低,也即 Z -A 之间的关系越接近于 0,那膨胀系数也就越大,在观察性研究中同理。

    所以,使用工具变量时,我们需要对这一表达式分子和分母中的效应进行估计。在我们戒烟的例子中,工具变量 Z 是一个二分变量(1:参与人员所在州的香烟均价高于 1.5 美元,0:其他)。

    分子的估计值是 :
    在这里插入图片描述
    而分母的估计值为 :
    在这里插入图片描述
    因而可以得到治疗效应的估计值是 0.153 / 0.0627 = 2.4 kg

    在工具变量的三个条件以及第四个附加条件之下,2.4kg就是戒烟对增重的因果效应均值 (这一方法也被称为 Wald 估计法) 。

    除了Wald估计法以外,我们也可以用双阶最小二乘法拟合两个(饱和)线性模型从而估计表达式中的分 子和分母(需要作出很强的参数假设),也可以使用结构模型(避开强假设)、然后通过G-估算 计算结构模型中的某些参数。在工具变量中到底是使用二阶最小二乘法还是使用结构模型, 就类似于在没有工具变量的时候到底是使用结局回归还是结构嵌入模型一样,各有利弊。

    不过无论如何,本小节介绍的表达式如果要被认为是治疗 A 对结局 Y 的因果效应均值,那我们需要工具变量的第四个条件成立。接下来,我们将讨论第四个条件。

    1.3 工具变量第四类条件:同质性

    本小节中工具变量的三个条件1-3不足以保证工具变量的效应估计,就是治疗 A 对 Y 的因果效应。除此之外,我们需要第四个条件:(4)效应的同质性。本小节,我们将讨论 (4)的不同形式以及它在学术历史中的发展变化。

    • 完全同质:最极端也是最古老的同质性被表述为:治疗 A 对结局 Y 的效应对每个人来说都是相等且不变的。 例如,如果戒烟让每个人都增加同样的体重(比如 2.4kg),那么就符合完全同质,因果效应就是2.4kg这一常数,然而这在现实中几乎是不可能的。在戒烟的例子中,戒烟会让有的人增重许多、让有的人增重一 点、甚至让有的人体重变轻。

    • 加法尺度上的同质性:在1)不够实际的情况下,同质性后来被放宽为第二种形式,对二分变量 Z ,治疗组或非治疗组中 A 对 Y 的效应在 Z 的每一个分层中相等,即如下公式,不过这是加法尺度上的同质性,即。
      在这里插入图片描述

    • 在未测混杂因素中A对Y 的因果效应同质:A对Y 的因果效应在未测混杂U 的每一分层中都相等,如下公式,然而这个假设依然是不可验证的,且不太可信,因为未测混杂很可能就是效应修饰因子。比如戒烟对增重的影响很可能就因吸烟频率的不同而不同,同时吸烟频率自身也是一个混杂因素,即。
      在这里插入图片描述

    • 另一种形式的同质性,在加法尺度上Z-A的相关性,在未测混杂因素U 的不同分层中不变。

    不过,因为同质性在许多场合中都显得不合理,所以许多研究者对能否使用工具变量得到有效的效应估计抱持怀疑态度,不过我们还有其他两种方法能让我们避开同质性条件。 其中一种方法是在工具变量的模型中包含研究起始时的变量。如此一来,我们就能放宽双阶最小二乘法中的参数假设,也就能更放心地使用工具变量。在模型中包含初始变量会限制治疗在 协变量各分层中的变化情况,同时允许治疗组中的因果效应随 Z 而变化 (也就是加入初始变量,使两组“处理后”的用户符合同质性条件) 。

    另一种方法是放弃同质性,使用另一个条件(4)。
    新的条件(4)虽然不足以让我们估计人群中的因果效应均值,但将会让我们工具变量的效应估计有因果性意义。我们将在下一小节讨论 另一种条件4。

    1.4 工具变量第四类条件:单调性

    让我们再回到最开始的双盲随机试验,其中有表示治疗分组的变量 Z 、表示实际治疗情况的 变量A、以及表示结局的变量Y。对于试验中的每一名被试,我们将反事实变量A(Z=1) 定义为这名 被试被分配到治疗组( z =1)时他的实际治疗情况,A(Z=0) 同理。 如果我们知道每个被试的A(Z=1) 和A(Z=0) ,那我们就可以将所有被试分为互不重叠的四组:

    都会接受治疗,即被试不管有没有被分配到治疗组,都接受治疗,即图片。

    都不会接受治疗,即被试不管有没有被分配到治疗组,都不接受治疗,即图片。

    配合者,即被试实际治疗情况总会和他们的分组相同,即图片。

    对抗者。即被试实际治疗情况总会和他们的分组相反,即图片。
    如果不存在对抗者,那单调性成立,这是因为工具变量 Z 的取值变大,要 么A 不变、要么也导致 A 的取值变大 (配合者)。只有对对抗者来说, Z 取值变大会导致 A 取值变小。或者换句话说,如果对所有人有 图片,那么单调性成立。

    现在我们将上一小节中的同质性替换为单调性,让单调性成为我们的第四个条件。那么工具变量的效应估计就不再是
    图片
    在单调性下,工具变量的效应估计等于配合者中的因果效应均值,也即
    在这里插入图片描述
    简单而言,工具变量的效应估计的分子,也即 Z 对 Y 的因果效应,就等于本小节四个不同分组中 Z 的效应的加权平均。
    然而,在都会接受治疗与都不会接受治疗这两组中, Z 对 Y 的效应为0,这是因为 Z 对 Y 的因果效应需要通过 A ,而 A 的取值 在这两组中是固定的。
    同时,在单调性条件下,不存在对抗者。因此,工具变量的效应估计的分子,就是配合者中 Z 对 Y 的因果效应——也就是配合者中 A 对 Y 的因果效应——再乘以配合者所占的比例。
    而配合者所占的比例,就等价于工具变量的效应估计中的分母。

    (配合者中的因果效应均值是一个子群体中的因果效应,可能与整个人群的因果效应不尽相同。)

    在观察性研究中,如果不存在对抗者,我们就可以通过工具变量估计配合者中的治疗效应。 然而严格而言,在观察性研究中不存在配合者或对抗者,这是因为观察性研究中没有治疗分配, 也就不存在配合或不配合。在我们戒烟的例子中,配合者指的是住在香烟价格高的州就戒烟、而 住在香烟价格低的州就不戒烟的人。与之相反,对抗者指的是住在香烟价格高的州就不戒烟、而 住在香烟价格低的州就戒烟的人。如果不存在对抗者且因果性工具变量是二分变量,那么 2.4kg 就是配合者中的效应估计。

    在 1990 年代,用单调性替代同质性被视为工具变量方法的救星。主要是因为同质性在大多数情形中并不可信,而单调性则更可信。不过,单调性假设下的工具变量也有很多缺点:

    • 单调性假设下的工具变量不能估计整个人群的因果效应,而只能估计配合者中的因果效应(类似CATE,Conditional Average Treatment Effect)。
    • 其次,在观察性研究中,单调性假设也并非总是成立。
    • 最后,将人群根据配合程度分成四组这一做法可能并不合理(在许多现实情景中,配合者是劣定的)。

    (Deaton等在2010年的paper中这样评价配合者中的效应:“这偏离了我们的初衷。原本光线很强,能照耀各个角落。但现在我们控制了光线能照射的地方,然后宣称这就是我们一直以来希望看到的东西。”)

    总而言之,如果我们只关心配合者中的因果效应,那在只涉及两个分组的双盲随机试验中, 单调性就是一个合适的假设。然而,当情形更加复杂或涉及观察性研究,即使我们的工具变量是真正的因果性工具变量,我们也需要倍加小心。

    1.5 工具变量三个条件的剖析

    前两个小节我们讨论了同质性或单调性作为工具变量第四个条件的优劣。我们的讨论都假设了Z 是一个有效的工具变量。然而在观察性研究中,Z 可能并不满足工具变量三个条件中的 (2)和(3),因而就不是一个有效的工具变量;也可能 Z 仅仅勉强满足(1),那么Z 就只是一个弱工具变量。在这两种情况中,就算条件(4)完美成立,使用工具变量也会导致很强的偏移。现在,我们再详细讨论一下每个条件:

    • 条件(1):Z 和 A 相关。这一条件可以实证地验证。研究者在使用工具变量之前,需要先验证 Z 和 A 是否相关。然而,就像我们戒烟例子中一样,如果 Z 和 A 之间的相关性很弱,那就是一个弱工具变量,这可能带来三个严重的问题:

    • 第一,弱工具变量会导致 95%置信区间变宽。

    • 第二,弱工具变量会放大因条件(2)和(3) 不成立带来的偏移。 Z 和A 的弱相关性会使得工具变量效应估计中的分母变小,而条件(2)和 (3)影响的是分子,如果分子有偏移,那么这一偏移将会被放大。在我们戒烟的例子中,任何分子中的偏移都会被乘以 15.9(1/0.0627)。

    • 第三,即使样本够大,弱工具变量也会带来偏移,并导致效应估计方差的低估。也即,效应估计是错误的,且置信区间太窄了。

    • 条件(2):Z 仅通过A 影响Y ,而不能直接影响Y 。在因果图中,如果有箭头从 Z 指向 Y ,那就违反了条件(2),就如图 3.4.1 所示。这一箭头不经过治疗 A ,因而将会直接作用于工具变量效应估计的分子,而这一额外部分也会被视为 A 的效应的一部分,从而被分母扩大。在图3.4.2中,条件(2)对原变量 A 成立,但对于A并不成立,这是因为 路径 Z → A → Y 所表示的 Z 的效应并没有经过 A,而我们估计的却是 A的效应。在实践中,为了简便,很多时候我们只能用近似的 A*(如上文提到的香烟价格是否>=1.5)替代真实的 A,这种近似替代是工具变量的一个主要问题。
      在这里插入图片描述
      条件(3):Z 和 Y 没有共同诱因。这一条件同样无法验证。图3.4.3 描绘了 Z 和 Y 存在共同诱因的情形,其中U1不仅是Z和Y的共同诱因,也是 A 的诱因。在观察性研究中,Z 的混杂总是存在(对于其他研究者不能控制的变量也同理)。而混杂会影响效应估计里面的分子,同时也会被视为 A 的效应的一部分,从而被分母扩大。
      在这里插入图片描述

    1.6 一些对和不对的解决方法

    • 部分解决办法:

    利用在分层中假设3成立的方法进行验证:某些时候,条件(3)和其他条件在某些变量的分层中更可能成立。相比于直接假设 Z 和 Y 之 间没有混杂,加上“在变量V 的分层中”这一限制可能会更好一些,也即假设“在某些变量V 的 分层中, Z 和Y 之间没有混杂”。从而我们就可以在V 的分层中利用工具变量估计因果效应,然后再假设治疗的因果效应在整个人群(同质性)或者配合者(单调性)中是不变的,进而汇总这些分层中的效应估计。

    • 不对的方法:

      • 用已测混杂在不同分层的分布“预测”在未测混杂中的分布: 研究者也经常检验工具变量Z 的不同分层中已测混杂的分布,从而为条件(3)提供支撑。 这一做法是基于这样一种想法:如果已测的变量已经分布均衡了,那未测变量同样分布均衡的可能性会高一些。然而,这一想法可能会造成致命的错误,这是因为即使再小的不均衡,经过(前文讨论的)放大之后,也会造成很大的偏移。

      • 多个工具变量可能加剧效应估计的偏移:有些研究者会同时使用多个工具变量,从而缓和只有一个工具变量的不足。然而使用多个工具变量会加剧我们上述讨论的种种问题。工具变量的数目越多,它们中的某些也就越可能违反工 具变量的三个基本条件。

    1.7 工具变量与其他方法比较

    工具变量和我们前面讨论的(需要识别出所有混杂因子的)方法至少在三个方面不同:

    • 就算数据是无限的,工具变量也需要模型假设,而此时逆概率加权与标准化不需要。 如果我们有人群中每个人的治疗、结局、以及混杂数据,我们就能用非参数化的逆概率加权和标准化两种方法估计治疗的因果效应均值。而在工具变量中,我们仍然需要模型去估计治疗的因果效应。在数学上,同质性等价于将结构模型中的所有乘积项参数设定为 0,也就是说,工具变量方法不存非参数的形式(工具变量不是唯一没有非参数形式的方法,断点回归分析等方法也没有非参数形式) 。

    • 稍微违反条件(1)至(4)会造成不可预测的极大偏移。工具变量的一个理论基础是效应估计中的分母会扩大分子中的效应。因此,当这些条件不成立的时候,或者是一个弱工具变量的时候,就可能导致不可预测的极大偏移。工具变量的效应估计对假设条件的变化非常敏感,这一特质使得工具变量对于圈外人来说是一种非常危险的方法,同时也再一次强调了敏感性分析的重要性(Baiocchi等在他们2014年的论文中讨论了量化工具变量敏感性的方法) 。

    • 能使用工具变量的理想情形相较于其他方法来说更不常见。我们讨论过,工具变量主要用于有大量未测混杂、有一个二分变量A 、以及有一个很强的因果性工具变量 Z 的情形之中,同时还需要同质性/或单调性成立。这些限制使得工具变量只能用于简单的因果推断情形当中,比如比较 A = 1 与 A = 0 的效应。

    1.8 其他工具变量的解读

    1.8.1 因果推断中:内生性的一个有意思的例子

    在这里插入图片描述
    考虑研究航空公司票价(prince,p)和销量(sales,y)的影响,即当其他条件不变时,如果增加票价,销量会如何变化;这是在研究一个 causal effect。

    最好的方法就是随机化地做实验,比如随机对一些顾客,提高或者降低面向他们的票价;
    但是这样的实验不仅会对航空公司造成实际的经济损失(损失了潜在的客户或者减少了盈利),而且还客户还因为不公平的对待而对航空公司不满。

    因此,我们希望从历史数据里面来挖掘票价(P)和销量(Y)之间的因果关系:

    • Confounders:一个直接的方法就是把 Y 对 P 做回归,但是这样往往得出错误的结论。比如可能存在另外的因素,节假日(X),它不仅影响票价(P)也同时影响销量(Y),在节假日的时候航空公司定价高(P 大),同时人们出行需求也大,因此销量也高(Y 大);这是在历史数据里面做回归,得出的结论就会使 Y 和 P 成正相关,这显然是错误的。
    • Unobservable variables:有一种方法是把可以观察到的影响因素也放到回归方程里面,根据前面几个 post 的内容,如果能够把所有的因素都包含进来,那么也能够得出正确的结论。但是,有可能会有一些观察不到的作用因素(E),比如在某个地区召开某个会议,它会同时使得票价(P)和销量(Y)都变大。
    • Instrumental variable(IV):因此,最有效的办法就是找到一个 IV,使得它只影响票价(当然,它也可以通过 P 来影响 Y,但是不能直接影响 Y),而和其他因素(X、E)不相关。
      在这里,我们找到 『燃油价格』这个因素来做为 IV,它上升时,航空公司基于成本考虑会上调票价 ,但是该因素和其他因素(比如是否节假日、是否在某个地区有会议)无关。需要注意的是,IV 的选取基本上基于人为的先验知识。

    1.8.2 与代理变量(proxy variable)的对比

    在这里插入图片描述
    第一项的要求应该两个是等价的,即额外选择的这个变量不能成为解释变量进入原来的方程中。最主要的区别在第二个要求上,proxy variable 要求找到的变量能够解释所有 q 和其他 解释变量的关联(即,q 剔除掉 z 的影响之后,r 和其他解释变量无关);而 instrumental variable 则希望找到一个和其他变量都没啥关系,但是只和 [公式] 有一点关联的变量。

    论坛 (StackExchange)上说:instrumental variable 的目的是想找因果关系,减小 estimation error 产生的影响,对于它来说, X k Xk Xk 能观察到,但是可能有偏差,因此要找一个只影响 X k Xk Xk的变量来抵消相应的估计误差;
    proxy variable 是想想办法把原来的线性模型系数估计处理,其中的变量 q 观察不到,想要找一个和它接近的变量来替换它。

    1个IV变量的估计:
    在这里插入图片描述
    用多个 Instrumental variable需要使用2SLS( two-stage least square):
    在这里插入图片描述

    1.8.3 中介变量/mediation

    参考:
    因果推理初探(6)——干预工具(下)

    在这里插入图片描述

    在这里插入图片描述

    1.8.4 连玉君老师的简易解读

    有哪些有趣的工具变量?

    这是一种处理内生性问题的经典方法,或者说被滥用最严重的方法。这种方法相信大家都已经学过,就是找到一个变量和内生解释变量相关,但是和随机扰动项不相关。
    在OLS的框架下同时有多个工具变量(IV),这些工具变量被称为two stage least squares (2SLS) estimator。具体的说,这种方法是找到影响内生变量的外生变量,连同其他已有的外生变量一起回归,得到内生变量的估计值,以此作为IV,放到原来的回归方程中进行回归。

    工具变量法最大的问题是满足研究条件的工具变量难以找到,而不合乎条件的工具变量只能带来更严重的估计问题。

    这里借用连玉君 的讲义

    王小二参加研究生复试的面试时,恰好认识其中一位参加面试的老师。假设面试分数 (Y) 由面试老师 (X) 决定,王小二可视为随机误差项u ,认识王小二的那位面试老师可视为内生的解释变量x1 ,如果让这位老师继续参加面试给王小二打分,那么面试分数就很可能偏高。

    在这里插入图片描述

    如何解决这个内生性问题呢?不妨再找另一个老师来代替这位跟王小二认识的老师,基本要求是:新找来的老师不能跟王小二认识,并且又跟被替换下的这位老师在专业背景方面有很高的相似度。这个新找来的老师就称为被替换下的老师的工具变量 (Instrumental Variable,简称 IV) 。接下来,让我们一起学习 IV 估计。
    在这里插入图片描述

    如果 “王小二面试” 时找来一个代替老师,那么这位新老师给的面试分数还是有一定的随机性,一个主要的原因是新找来的这位老师可能与被替换的那位老师之间的相关性不够强。为了控制面试得分偏差,我们可以多找几个老师。不妨再找一个老师,这两个老师就称为被替换下来的老师的两个工具变量。
    在这里插入图片描述

    2 econML实现 DeepIV

    2.1 示例

    DeepIV 可以看做把上述 2SLS 方法推广到非线性模型。
    论文参考:Deep IV: A Flexible Approach for Counterfactual Prediction
    DeepIV 结构可参考:【统计】Instrumental Variables

    代码:DeepIV examples
    在这里插入图片描述

    Deep IV 需要设定的变量:

    • Covariates, 协变量,which we will denote with X
    • Instruments, 工具变量,which we will denote with Z
    • Treatments, 干预,which we will denote with T
    • Responses, 因变量,which we will denote with Y

    主要要求是Z是一组有效的工具,且只能通过T,作用Y,不能直接作用Y。
    Deep IV估计器会拟合两个模型:

    • treatment model(T|Z,X) 干预模型(工具变量Z -> 干预T):It estimates the distribution of the treatment T given Z and X, using a mixture density network.
    • response model (Y|T,X)响应模型(干预T -> 因变量Y): It estimates the dependence of the response Y on T and X.

    代码:

    from econml.iv.nnet import DeepIV
    import keras
    import numpy as np
    import matplotlib.pyplot as plt
    
    %matplotlib inline
    
    n = 5000
    
    # Initialize exogenous variables; normal errors, uniformly distributed covariates and instruments
    e = np.random.normal(size=(n,))
    x = np.random.uniform(low=0.0, high=10.0, size=(n,))
    z = np.random.uniform(low=0.0, high=10.0, size=(n,))
    
    # Initialize treatment variable
    t = np.sqrt((x+2) * z) + e
    
    # Outcome equation 
    y = t*t / 10 - x*t / 10 + e
    
    # Show the marginal distribution of t
    plt.hist(t)
    plt.xlabel("t")
    plt.show()
    
    plt.scatter(z[x < 1], t[x < 1], label='low X')
    plt.scatter(z[(x > 4.5) * (x < 5.5)], t[(x > 4.5) * (x < 5.5)], label='moderate X')
    plt.scatter(z[x > 9], t[x > 9], label='high X')
    plt.legend()
    plt.xlabel("z")
    plt.ylabel("t")
    plt.show()
    
    # 构建模型
    treatment_model = keras.Sequential([keras.layers.Dense(128, activation='relu', input_shape=(2,)),
                                        keras.layers.Dropout(0.17),
                                        keras.layers.Dense(64, activation='relu'),
                                        keras.layers.Dropout(0.17),
                                        keras.layers.Dense(32, activation='relu'),
                                        keras.layers.Dropout(0.17)])
    
    response_model = keras.Sequential([keras.layers.Dense(128, activation='relu', input_shape=(2,)),
                                       keras.layers.Dropout(0.17),
                                       keras.layers.Dense(64, activation='relu'),
                                       keras.layers.Dropout(0.17),
                                       keras.layers.Dense(32, activation='relu'),
                                       keras.layers.Dropout(0.17),
                                       keras.layers.Dense(1)])
    
    # deepIV模型初始化
    keras_fit_options = { "epochs": 30,
                          "validation_split": 0.1,
                          "callbacks": [keras.callbacks.EarlyStopping(patience=2, restore_best_weights=True)]}
    
    deepIvEst = DeepIV(n_components = 10, # number of gaussians in our mixture density network
                       m = lambda z, x : treatment_model(keras.layers.concatenate([z,x])), # treatment model
                       h = lambda t, x : response_model(keras.layers.concatenate([t,x])),  # response model
                       n_samples = 1, # number of samples to use to estimate the response
                       use_upper_bound_loss = False, # whether to use an approximation to the true loss
                       n_gradient_samples = 1, # number of samples to use in second estimate of the response (to make loss estimate unbiased)
                       optimizer='adam', # Keras optimizer to use for training - see https://keras.io/optimizers/ 
                       first_stage_options = keras_fit_options, # options for training treatment model
                       second_stage_options = keras_fit_options) # options for training response model
    
    # 模型fit
    deepIvEst.fit(Y=y,T=t,X=x,Z=z)
    
    

    里面有一个问题就是,y的构成,

    y = t*t / 10 - x*t / 10 + e
    

    可以看到这里的e其实是一种误差项,为了不让模型学习到这么严格的规律。

    来看一下预测:

    n_test = 500
    for i, x in enumerate([1,2,3,5,8,10]):
        t = np.linspace(0,10,num = 100)
        y_true = t*t / 10 - x*t/10
        y_pred = deepIvEst.predict(t, np.full_like(t, x))
        plt.plot(t, y_true, label='true y, x={0}'.format(x),color='C'+str(i))
        plt.plot(t, y_pred, label='pred y, x={0}'.format(x),color='C'+str(i),ls='--')
    plt.xlabel('t')
    plt.ylabel('y')
    plt.legend()
    plt.show()
    

    在这里插入图片描述
    你可以看到,尽管响应面随x变化,但我们的模型能够很好地拟合数据。
    在低x的情况下,仪器的功率最小。
    在这里,它适合一条直线而不是二次曲线,这表明正则化至少表现得很好。

    2.2 解释deepIvEst .predict()

    
    x1 = np.array([8.7035757])
    t1 = np.array([10.50478964])
    y1 = t1*t1 / 10 - x1*t1/10
    z1 = 7.44929058
    y0 = 3.46753476
    
    deepIvEst.predict(t1,x1),deepIvEst.effect(x1),deepIvEst.predict(t1, x1),y1,y0 
    >>> (array([1.8513519], dtype=float32),
     array([-0.3443213], dtype=float32),
     array([1.8513519], dtype=float32),
     array([1.89213735]),
     3.46753476)
    
    

    我们来看这个例子,y1和y0都是实际值,差别,y0来自原数据集(y[0]),y0 = y1+ e(扰动项)
    但是实际上,应该是y1才是合理的真实值

    这里deepIvEst.predict就是预测值了,最终预测的值为1.85,y1为1.89 还是比较接近的
    还有这里deepIvEst.effect(x1),代表在x1 = 8.7035757的情况下,y(t=1)-y(t=0)的CATE值

    3 因果推断在BIGO:工具变量法

    因果推断在BIGO:工具变量法

    在之前的文章里,我们介绍了BIGO内部因果推断最主要的数学模型——潜在结果框架(Robin’s potential outcome framework或Rubin-Neyman causal model) [6]
    以及因果推断最主要的工具——随机化实验(randomized experiments),比如对于新的推荐策略或者UED方案,通过BIGO现有的实验平台进行 A/B测试量化新的干预 (treatment) 对用户体验或营收的影响。
    但在真实业务场景中,有时很难直接进行A/B Test或者A/B Test成本过高,这时随机化实验分析方法不再适用,需要诉诸其他分析方法,如观察性研究(observational studies)。在BIGO的业务中,类似场景主要是基于两方面的原因:

    1. BIGO旗下如短视频平台Likee和直播平台Bigo Live是典型的双边市场(two-sided markets)。
    2. 长尾效应: Bigo Live的营利模式主要来自于用户的直接付费,该营利模式下,营收类关键指标的长尾效应犹为显著。

    量化用户在Running的道具消耗对用户在整体休闲类游戏道具消耗的影响的因果效应值。

    在今天的文章里,我们以Likee短视频为例,介绍了今年诺奖获得者Joshua D. Angrist和Guido W. Imbens的主要工作之一:工具变量法 (instrumental variables),以及工具变量法最常用的算法工具:二阶最小二乘2SLS (two-stage least square)。我们也整理与介绍了BIGO应用工具变量法的案例:量化新引入项目对Bigo Live整体休闲类游戏平台生态与营收的影响。除此之外,我们也根据BIGO内部不同业务问题的场景与特点,应用如用户选择模型 (choice model) [5, 7],causalForecast [8], causalImpact [2] 等应用与解决在真实业务场景下不能通过随机化实验量化与评估的问题。
    接下来,我们将介绍BIGO在PCIC因果推断与推荐比赛的解决方案,包括解决与优化短视频推荐中bias问题的一些尝试。

    展开全文
  • 工具变量估计与两阶段最小二乘法

    千次阅读 2022-01-06 19:44:22
    1. 简单模型的工具变量法 假设一个简单回归模型为y=β0+β1x+u,其中x与u相关:Cov(x,u)≠0。 (1)为了在x和u相关时得到β0和β1的一致估计量,需要有一个可观测到的变量z,z满足两个假定: ①工具外生性...
  • 内生性问题—工具变量

    千次阅读 2021-06-17 07:47:48
    文章目录@[toc]1 什么是内生性2 内生性的来源2.1遗漏变量偏差2.2 联立方程偏差2.3 解释变量测量误差2.4 选择偏差2.5 双向因果关系2.6 模型设定偏误2.7 动态面板偏差3 工具变量3.1工具变量的思想3.2 两阶段最小二乘法...
  • 计量经济学(十一)工具变量

    千次阅读 2022-04-17 15:39:36
    工具变量法也就是 Instrumental Variable Analysis,简称IV,是用来处理内生性问题的重要方法,那么我们先从内生性问题出发,然后讲述工具变量法。 1. 内生性问题 对于上面式子中的多元线性回归方程,在采用OLS...
  • 为了方便理解,这里假设因变量为y,解释变量为x1(内生)、x2,控制变量为c1,工具变量为z1。 OLS回归 y = β1x1 +β2x2 + β3*c1 + e 直接ols回归 reg y x1 x2 c1 2.异方差检验 #检验异方差: hettest #Breusch-...
  • 什么是工具变量法? Instrumental variable methods The method of instrumental variables (IV) is used to estimate causal relationships when controlled experiments are not feasible or when a treatment is...
  • lecture 11:内生性与工具变量

    千次阅读 2021-04-30 12:38:00
    对此,在实际研究操作过程中,工具变量法(instrumental variable method)依然是解决内生性问题的最为有效方法之一,而且相比较而言,对基于调查数据的定量分析,工具变量方法具有独特优势,已构成解决内生性问题的...
  • 为解决这个问题,在陈云松(2012):农民工收入与村庄网络,《社会》发表的文章中,Heckman二阶段模型的基础上进一步采用工具变量方法。这个工具变量必须是一个和农民工在城市的工资收入没有任何直接关系,但却又...
  • 简言之就是判断两个工具变量是否是同期外生变量。 qui ivreg lwage (educ=huseduc motheduc) predict e1,residuals reg e1 huseduc motheduc test huseduc=motheduc=0 结果报告: 因此不拒绝原假设,认为huseduc和...
  • 一个有效工具变量应该满足以下两个条件: (1)相关性:工具变量应该与解释变量有关; (2)外生性:工具变量与扰动项无关; 传统的工具变量法一般是称之为“两阶段最小二乘回归”;以上图为例,在一篇文章中,两...
  • 工具变量通常采用二阶段最小二乘法(2SLS)进行回归,当随机扰动项存在异方差或自相关的问题,2SLS就不是有效率的,就需要用GMM等方法进行估计,除此之外还需要对工具变量的弱工具性和内生性进行检验。1数据与要求以...
  • 传统ols中的hypothesis要求xix_ixi​与uiu_iui​无关。但是在实际中很难满足这个假设,有时候因变量(在单方程模型中就是内生...这个时候比较有效的方法是采取工具变量法进行估计参数值。 Namely, an apppropriat...
  • 工具变量 (IV) 估计是处理内生性问题的基本方法,在经济学实证研究中有着极为广泛的应用。 一个合格的工具变量需要同时满足以下两个条件: 第一,相关性,即工具变量应该与内生变量相关; 第二,外生性,即工具变.....
  • 本篇是本人总结的基本Stata使用手册(4):工具变量
  • 问:用一个工具变量时,内生性检验显示没有内生性问题;用两个工具变量时,就会检验出内生性,同时回归的R平方缺失。请问怎么理解这些结果? 答:这里涉及两个问题:第一,为什么使用不同工具变量,内生性检验的结果...
  • 解释变量和误差项存在内生性问题 内生性问题来源 内生性问题主要来自于三个方面,分别为:遗漏变量、联立性以及度量误差 遗漏变量 遗漏变量是指可能与解释变量相关的变量,本来应该加以控制,但却没有控制的变量。...
  • 原标题:面板工具变量与内生性操作及应用(固定随机、豪斯曼检验、过度识别检验、预测等)????2021年寒假Stata研讨班:高级计量经济学及Stata应用研讨班????2021空间计量研讨班:空间计量及Geoda、Stata、ArcGis、...
  • 两阶段最小二乘法(2SLS)回归拟合的线性模型是一种常用的工具变量估计方法。 本文的主要内容是将各种标准的回归诊断扩展到2SLS。 2SLS估计的回顾 我们需要2SLS回归的一些基本结果来开发诊断方法,因此我们在此...
  • 在js中变量有效范围问题

    千次阅读 2017-06-22 17:19:55
    JavaScript中变量的作用 本文适合JS初学者,大神请绕路! 1.在方法中定义一个变量的时候不用var的情况 //告诉浏览器的解析器当前文件的保存的编码格式,让解析器用GB2312编码来解析此文档 在方法中定义一个...
  • Linux下设置oracle环境变量

    千次阅读 2021-05-08 03:13:57
    Linux设置Oracle环境变量方法一:直接运行export命令定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义...
  • Linux 添加环境变量和删除环境变量

    千次阅读 2021-05-13 05:29:07
    环境变量是一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如PATH.在交叉编译中,会经常运用到环境变量的设置。在linux中,查看当前全部的环境变量的命令式env.当然也可使用 echo来查看...
  • postman小技巧-提取变量及设置变量

    千次阅读 2022-01-12 22:24:51
    情景:使用postman测试接口,需要先调用登录接口获得token令牌,然后使用这个令牌来调后续其他接口,token一般有效期较短,每次都要复制非常麻烦; 方法:1、设置环境变量,在右上角设置一个环境变量,此处设置为...
  • simulink定义全局变量

    千次阅读 2021-04-22 12:34:02
    函数文件的变量是局部变量 , 运行期间有效 , 运行完毕就自动被清除 , 而命令 文件的变量是全局变量 , 执行完毕后仍被保存在内存中 (3) 、M 函数文件要定义......(4)命名变量时可以取一个容易...
  • 汇总了 Helm 3 的常用的知识点和概念。文档中的部分内容源于各大博客和官方文档,还有一些内容基于自己的理解和实践进行了重新整理。所有的概念讲解均会配有...在 Helm 中,变量通常是搭配 with 和 range 使用,这样能.
  • Linux中环境变量的设置

    万次阅读 多人点赞 2018-10-08 19:43:11
    在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件,类似的错误。 在Linux系统下,如果你下载并安装应用程序,很...
  • SPSS处理工具:SPSS25.0 准备好数据 1.分析多自变量对某一个因变量的显著性 在分析里找到,General linear model,然后选择Univariate, 分别把两个自变量TIssue and Speed 输入到Fixed Factor,然后设置Option里的...
  • 5.Java环境变量配置

    千次阅读 2021-03-09 06:04:19
    一.Java的安装1.下载合适的版本,安装jdk和jre到同一路径下的同一文件夹下,例如:都安装在 E:\Java; 备注:JDK:Java Development Kit ;JRE: Java Runtime ...环境变量的配置1. 三种进入环境变量编辑的方...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 349,677
精华内容 139,870
关键字:

如何判断工具变量是否有效