精华内容
下载资源
问答
  • 2021-08-02 21:43:10

    什么是工具变量,以及什么是孟德尔随机化,以及孟德尔随机化怎么实现都给大家写了(大家去翻翻之前的文章呀),因为孟德尔随机化的工具变量是基因变量,所以我们会用专门的R包去做,普通的工具变量研究,我们要用的方法又不一样了。

    我们做工具变量回归的时候用的方法叫做两阶段最小二乘估计--two-stage least squares (TSLS),本文会给大家介绍该方法的原理和实际操作方法,希望能对大家有帮助。

    两阶段最小二乘估计的基本原理

    以下一步步给大家捋捋哈,假设我现在对学历和收入这两个变量有兴趣,我想知道学历在多大程度上影响了我们的收入,于是我把收入作为因变量,学历作为自变量做个回归:

    y = α + βx + ε

    弄个β出来,这个β能代表学历对收入的影响嘛?不行。

    因为你根本就没考虑其它可能和x有关同时又影响y的因素,比如学历高的人通常家境好,社会资源好,敢创新,肯钻研等等,这些优秀的品质都有可能影响收入。但是我提到的这些变量你都没有收集,或者就算你收集了你其实也是没法控制的。

    此时,我去找一个学历的工具变量(这个工具变量和x强相关,但和之前提到的各种混杂无关,也绝不会影响y)。然后有学者就找了吸烟这个工具变量,具体参考下面的文献:

    Dickson, M. (2013). The causal effect of education on wages revisited. Oxford Bulletin of Economics and Statistics75(4), 477-498.

    其中的基本思想就是通过工具变量切断自变量和残差的关系,解决内生性问题和反向因果,得到更加准确的自变量系数估计(大家要明白完美的工具变量是很难找得到的)。

    到这儿,为啥要用,用啥两个问题解决了,我们接下来看怎么用工具变量,或者说怎么做工具变量回归(两阶段最小二乘估计):

    两阶段最小二乘估计分为两个阶段,第一阶段是将自变量的变异分解,分解成只有工具变量解释的部分和与残差相关的部分,在我们的例子中就是将学历的变异分解成吸烟解释的部分和相应的残差,如下:

    • 学历 = c + d*(吸烟) + v

    这个方程是明确工具变量对自变量的作用(在之前孟德尔随机化的文章中一直用的是“暴露”这个词,一个意思哈),这儿要求我们的系数d一定需要显著(否则吸烟就不算是一个合格的工具变量),然后我们会将工具变量对自变量的预测值,作为第二阶段的自变量。

    第二阶段就是用工具变量对自变量的预测值来估计回归系数:

    • 收入α + β*学历预测值 + ε(此处应该是学历“拔”哈,工具变量预测的学历。)

    这一阶段估计出来的系数β就是我们需要的啦,这个例子中,我们是只有一个内生变量---学历和一个工具变量----吸烟的,这种情况叫做just identified,我们还可以多找几个工具变量使得工具变量的数量大于内生变量的数量,此时就叫做 over-identified

    实例操练

    做两阶段最小二乘估计我们需要用到的函数是ivreg(),这个函数需要设置两个部分的参数,基本形式是:y ~ x1 + x2 | x1 + z1 + z2

    其中x1和 x2是外生和内生解释变量,然后是一个竖杠,竖杠的右边就放的是解释变量,这儿需要注意的是在我们的解释变量x1也是需要放在右边一个的,如果外生变量很多的话,可以再写一个竖杠,形成外生|内生|工具变量的公式形式。

    比如,我现在想要研究学历和收入的关系,我的数据如下图:

    既有学历education还有收入wage,当然还有很多的协变量。

    要研究学历如何影响了收入,普通来讲我就做个回归,把协变量加一加,甚至说加个二次项拟合得更好一点:

    m_ols <- lm(log(wage) ~ education + poly(experience, 2) + ethnicity + smsa + south,
      data =data)
    summary(m_ols)

    看输出:

    哦,似乎是学历或者教育可以提升收入0.074个单位的log收入哦,这个对吗?

    并不对的,因为还有很多影响收入的变量你始终难以完全考虑或者说我这个数据中根本就没有,还有你的自变量的内生性问题,反向因果造成的问题等等都会影响我们的系数,这个时候我就找了个工具变量nearcollege想做工具变量回归,于是我就可以写出如下的代码:

    m_iv <- ivreg(log(wage) ~ education + poly(experience, 2) + ethnicity + smsa + south |
      nearcollege + poly(age, 2) + ethnicity + smsa + south,
      data = SchoolingReturns)

    或者如下的代码:

    m_iv <- ivreg(log(wage) ~ ethnicity + smsa + south | education + poly(experience, 2) |
      nearcollege + poly(age, 2), data = data)

    在上面的代码中第一种写法是将外生和内生解释变量写一起然后再写工具变量,第二种写法是先写外生再写内生再写工具变量,两个写法的输出都是一样的,注意虽然是两阶段最小二乘回归,但是在实际操作中都是在ivreg这一个函数中就可以完成的,结果见下图:

    从结果中就可以看得出来,我们用两阶段最小二乘估计得到的系数是要大一点点的。

    另外我们的结果中还有输出模型的诊断信息:

    诊断信息中包含3个检验一个是weak instruments,一个是Wu–Hausman test,还有一个Sargan test,一个一个给大家写写是什么意思:

    • weak instruments:这个是检验我们的工具变量是不是一个好的工具变量,原假设是weak,所以我们希望这个统计量越大越好,p越小越好。
    • Wu–Hausman test:这个是检验内生性的,就是检验我们的自变量是不是和残差有关。无关的话你直接做回归就行。
    • Sargan test:这个检验只有在工具变量的个数超过内生变量的个数的时候才有,如果这个检验显著的话就说明至少有一个工具变量是不行的。

    小结

    今天给大家写了工具变量回归的做法和解释,感谢大家耐心看完,自己的文章都写的很细,代码都在原文中,希望大家都可以自己做一做,请关注后私信回复“数据链接”获取所有数据和本人收集的学习资料。如果对您有用请先收藏,再点赞转发。

    也欢迎大家的意见和建议,大家想了解什么统计方法都可以在文章下留言,说不定我看见了就会给你写教程哦,另欢迎私信。

    更多相关内容
  • 受限被解释变量 断尾回归 概念: 命令: 示例 首先进行回归,对工作时间大于零的进行回归 下面进行断尾回归 和普通回归比较,断尾回归的差异还是很明显的 零断尾泊松回归与负二项回归 命令 示例 进行零断尾...

    受限被解释变量

    断尾回归

    概念:

    在这里插入图片描述

    命令:

    在这里插入图片描述

    示例

    首先进行回归,对工作时间大于零的进行回归
    在这里插入图片描述
    下面进行断尾回归

    在这里插入图片描述
    和普通回归比较,断尾回归的差异还是很明显的

    零断尾泊松回归与负二项回归

    命令

    在这里插入图片描述

    示例

    在这里插入图片描述
    进行零断尾泊松分布
    在这里插入图片描述
    下面进行NB2模型,为了使得模型快速收敛出结果,我们只将几个变量写入模型
    在这里插入图片描述

    随机前沿模型

    概念

    在这里插入图片描述
    两边取对数:
    在这里插入图片描述

    操作

    首先估计OLS模型:
    在这里插入图片描述
    进行随机前沿的半正态模型:
    在这里插入图片描述
    估计无效率项U:
    在这里插入图片描述

    估计随机前沿的指数模型:

    在这里插入图片描述
    此时P值为0.135大于0.05
    在这里插入图片描述

    预测无效率项:
    在这里插入图片描述
    计算两个预测结果的相关系数
    在这里插入图片描述
    发现模型预测结果基本相似。说明无论使用那个模型,结果都近似相同

    异方差

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    断尾正态模型

    在这里插入图片描述
    在这里插入图片描述

    附加一点内容:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • Python解释器安装教程及环境变量的配置(windows) 文章目录Python解释器安装教程及环境变量的配置(windows)1.python解释器下载2.安装步骤三.确认是否安装好四.设置环境变量五.使用多版本python解释器 1.python...

    Python解释器安装教程及环境变量的配置(windows)

    1.python解释器下载

    下载地址:https://www.python.org/

    1.点击链接进入官网后把鼠标移动到downloads按钮上点击windows

    在这里插入图片描述

    2.根据需求选择下载版本,本文下载的是3.6.8版本(注:Python自2020年已不再更新维护2.7及之前的版本)

    64位的电脑点击第三项进行下载,如是32位的电脑请点击倒数第二行进行下载

    在这里插入图片描述

    2.安装步骤

    下载完成后点击.exe文件进行安装

    1.勾选下方添加环境变量后选择第二项自定义安装

    在这里插入图片描述

    2.直接选择next进入下一步
    在这里插入图片描述

    3.选择路径完成安装(尽量不要装在C盘并且保证自己能够找到安装位置)

    在这里插入图片描述

    3.确认是否安装好

    使用windows键+R键 输入’cmd’命令行,切换F盘输入python使用解释器

    在这里插入图片描述

    4.设置环境变量

    每次都需要切换地址才能使用Python解释器的操作十分繁琐,所以我们直接把Python解释器添加在环境变量中,这样每次唤醒cmd之后只需要直接输入python就可以启用解释器了。

    如若第一步的时候已经勾选安装了环境变量就不需要再设置了,在这里演示一下未勾选的话环境变量怎么设置。

    1.鼠标右击我的电脑->属性->高级系统设置->环境变量

    在这里插入图片描述

    2.双击path后点击新建填入python解释器所在路径后确认即可完成配置

    在这里插入图片描述
    在这里插入图片描述

    5.使用多版本python解释器

    python解释器可兼容多个版本,如有需要可以在电脑上安装老版本解释器同时使用,本文以安装python2.7版本的解释器为例

    2.7版本解释器按如上步骤下载安装完成之后,只需要打开文件夹把图中上方的python应用程序复制粘贴后重命名为python2即可,同理,把3.6版本的解释器中应用程序复制为python3。这样两个版本的解释器就都可以使用了

    Python27安装目录
    在这里插入图片描述

    Python3的安装目录

    在这里插入图片描述

    解释器运行状态如下

    在这里插入图片描述
    在这里插入图片描述

    6.最新 PyCharm 2021.2.3安装

    自行在百度中搜索,找时间最近的进行安装破解,因为破解方法一段时间就会失效,自己写的文章也因为版权问题发不出来,自己在百度中搜索

    展开全文
  • Python解释器安装与环境变量添加

    千次阅读 2021-01-30 02:13:47
    python解释器安装与环境变量添加python解释器安装(3.6和2.7):这个是python解释器的官网,一定要牢记。鉴于市场上有两种python版本(2和3),今天两种版本都装一下,互相学习,如有错误还请各位评论指正。windows系统...

    python解释器安装与环境变量添加

    python解释器安装(3.6和2.7):

    这个是python解释器的官网,一定要牢记。

    鉴于市场上有两种python版本(2和3),今天两种版本都装一下,互相学习,如有错误还请各位评论指正。

    3b946ecbf8e2f7c7b163e7eedbf77c50.png

    windows系统(如果是苹果的系统就下mac os x)

    e5fa540460726dd281f90caf5cdebaa7.png

    进来后

    f2748dce8bfe0d5b9cca2a6278886648.png

    python3版本

    选择3.6.6版本(选exe开头的)有-64是64位,无64就是32位的,根据自己电脑选择

    d130123983cbed9be3d1f746501d6d4a.png

    python2版本

    选择2.7.16版本(msi开头的)-64是64位,无64就是32位的,根据自己电脑选择

    e097a306a65ee4279d8ef95b89cecc78.png

    下载完:

    ec2097257d3e78bf39c51b9665b9bc31.png

    先安装3.6.6

    框1表示默认安装,框2表示自定义安装,框3是安装环境变量,应该在框3前画√,这里我们不画,后面再调试环境变量.我们选择自定义安装.

    7a40d286cead3173108d8d7983bc9336.png

    不需要动,next.

    5c7a34bae9c7ea6d38b7ea88f5bb04c4.png

    上半部分两个画勾的不动,下面路径改一个自己容易找的位置,尽量不要有中文目录

    ac43a598cea0d3730eb983dbb1641379.png

    继续install

    40642dc9d5ece80dc19ee5cf538753bb.png

    安装完成,close即可。(注意:这里环境变量还没有调)

    b559e647f89020588db24bef6bc75ce5.png

    win键+r,并输入cmd→确定

    8dd4eb92ce5d8657200603c128e4f15f.png

    出现:

    d6933a53326d738428a272c7ff2ff453.png

    输入python回车(这就是因为环境变量没有调,下面我们先调3.6.6的环境变量。)

    0d24b8a06480a048c309462081cc93e4.png

    添加环境变量(3.6):

    右键“这台电脑”选择“属性”

    8b9762336bf4dcbd018ce7f772d1826b.png

    选择“高级系统设置”

    acbf54d7d886b61b820b1a0c1ed4e191.png

    选择“环境变量”

    38e360a41d90f844d7edd1c83e5e8683.png

    一定要在“系统变量”里找“path”再点“编辑”

    0ef75962c5af5c8daf941f8c7e060949.png

    再点“新建”

    4bac52813d843b59385775ff7acc8995.png

    再找刚才安装的python3.6.6的安装目录,将安装路径复制下来,粘在这边新建的里面。

    9d4801b77ecce9204cf041d3cf9dc56a.png

    最后点确定

    0d6ba86b3abceae56e19b7bb629821b8.png

    后面一系列的确定全点完。再用cmd试一下

    b6781d5fd8444bd87290ed3763850309.png

    当你进入python后要退出,输入exit()一定要是英文符号.

    注意:

    这里要注意一点,刚才的环境变量是win10的调试方法,win7在以上基础,还需要以下操作

    编辑文本→复制下方内容,粘贴出来,最后加个英文的分号;分号后再加python的安装目录,再复制粘贴回编辑文本,确定即可。

    535c20624a9feb8558583b1f9d939b8b.png

    022ada26d37a28233fd6d462e3af8868.png

    e5fec927de32448e99e4669660c5c7ff.png

    python 2.7.16安装

    e0815f9c4e3029df7f16d1feec843ddd.png

    选第一个就好,下一步

    6fbf7e83d5ab71e4a1b3ca089c500d6a.png

    55b28300f51430a48a236899c3859644.png

    还是选个简单的目录自己好找,还是最好不要出现中文

    6d19d6c74287957c955e917cf03638e3.png

    无调整,继续next

    0c3e0f8d94add753a238b384268881d7.png

    完成

    92bd923ddc61940f141989ad9d764a98.png

    将python3和python2目录下的python.exe再复制出来一个,分别命名为python3.exe和python2.exe方便后期调用

    007e465ddf2b32a08f5fa672e87e6164.png

    f1f7033b28f6078b86bc0bfbad406de3.png

    6aa84d319ff2ccd91b8ae1ddd4f5bfe9.png

    添加环境变量(2.7):

    环境变量添加步骤与3.6.6一样,win7也一样.

    到了这里要注意一下:

    到了这一步,要注意尽量让python3在上面,谁在上面优先级越高,右边的"上移"和"下移"可以调整位置。

    7cdf19c55369e99117d7d84556299c17.png

    调整他俩的上下位置是为了在cmd测试时,谁在上,输入python就调用谁,刚才的名字改过了,想用2就打python2,想用3就打python3。如下图:

    1ce4249b6973d5519362ed27be06f0a3.png

    现在python2.7.16和python3.6.6解释器已经安装完了。

    如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

    展开全文
  • 变量之间的相关性研究

    千次阅读 2021-08-17 21:07:29
    经过以上这些对比,我们可以说广告曝光量和费用成本之间有一些相关关系,但这种方法在整个分析过程和解释上过于复杂,如果换成复杂一点的数据或者相关度较低的数据就会出现很多问题。 比折线图更直观的是散点图3。...
  • lecture 11:内生性与工具变量

    千次阅读 2021-04-30 12:38:00
    在一般模型中,被解释变量应该是内生的,解释变量应该是外生的,解释变量的取值是不能我们的模型所决定的。内生性问题字面意思指的是解释变量不是完全外生了,有了内生性了。 此种内生性问题的一个常见症状就是...
  • 松弛变量

    千次阅读 2020-02-28 13:35:19
    若所研究的线性规划模型的约束条件全是小于类型,那么可以通过标准化过程引入M个非负的松弛变量。松弛变量的引入常常是为了便于在更大的可行域内求解。若为0,则收敛到原有状态,若大于零,则约束松弛。 对线性...
  • 随机变量的相关性

    千次阅读 2020-07-13 00:43:41
    相关性两变量相关性两变量相关性定义序列变化过程描述 两变量相关性 两变量相关性定义 研究两个变量之间的相关性是相关性分析最常用的地方。相关性是指两个变量之间的关联程度。其数学定义可以描述为: 其中 为x与...
  • 变量分析、组合变量分析

    千次阅读 2020-04-20 21:23:16
    1.协方差的一些解释: 在坐标轴中,使用x_u、y_u画两条直线,会使数据分布在四个象限 当s_xy为正时,表示变量x、y是正的线性关系,即x增加,y增加 当s_xy为负时,表示变量x、y为负的线性关系,即x增加,y减小 当s_xy...
  • Linux 添加环境变量和删除环境变量

    千次阅读 2021-05-13 05:29:07
    环境变量是一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如PATH.在交叉编译中,会经常运用到环境变量的设置。在linux中,查看当前全部的环境变量的命令式env.当然也可使用 echo来查看...
  • 声明:本文讨论主题的不是严谨意义上的“因果关系”,而是探讨自变量与因变量的关系(实际上不是真的因果关系),主要关注点在于找到并验证影响(或预测)因变量Y的自变量X。同前文...
  • WINDOWS环境变量解释(完整版)

    千次阅读 2020-03-12 16:29:55
    1.简介:环境变量是在操作系统中一个具有特定名字的对象,包含了一个或者...是告诉编译程序到哪里去.h类型的文件这其实也相当于设了环境变量。 实质上就是包含了一个指向文件夹的路径,在系统中形成一个快速检索...
  • 多元线性回归变量筛选

    千次阅读 2020-12-06 14:51:07
    目录##变量筛选方法预测与回归诊断其他统计量SAS中Weight和Freq的区别Refreence1. 变量筛选方法全回归模型 (None)向前发(Forward) -- 逐步引入法向后发(Backward) --逐步剔除法逐步筛选法 (Stepwise)最大Rsquare增量...
  • 总算懂得如何设置python环境变量

    千次阅读 2021-02-05 11:13:37
    08-25 12:22:21浏览:279核心提示:相信很多初学者,在安装了python之后想完整在命令提示符直接输入python就可以使用的操作,但是会出现输入了python之后不到命令的原因,这是因为你没有创建python的环境变量所...
  • 请访问原文链接:Windows 10 环境变量:通过 CMD 和 PowerShell 写入环境变量,查看最新版。转载请保留出处。 作者:gc(at)sysin.org,主页:www.sysin.org 1. 环境变量简介 环境变量 (environment variables) 是在...
  • shell--bash变量

    万次阅读 2022-04-01 10:54:53
    命令: 1.env 查看环境变量 2.set 显示系统中已经存在的shell变量,以及设置变量的新变量值 -u 如果设定此选项,调用未声明的变量时会有提示 (-u开启,+u关闭) ...如果value没有指定,变量赋值为空字符串。...
  • 变量分析方法与相关分析

    千次阅读 2021-08-04 17:11:02
    1.有因变量,则建立有监督模型 有监督模型具有两大通用目的:1)分析...2)因变量为分类变量(建立的模型称为分类预测模型),当自变量为连续变量(或连续+分类变量)时,可选用判别分析、Logistic、probit回归等;当
  • 前几天,有个大佬考了我一个问题:为什么类的成员变量不需要指定值就可以自动赋予初始值,而方法内的局部变量就必须指定初始值呢?说实话,这个问题确实难倒我了,之后我在网上一顿操作,终于把这个问题弄得稍微明白...
  • eclipse配置环境变量

    千次阅读 2021-02-12 17:12:34
    下载JDK:..."环境变量"(win10系统略有差异)如下图可以看到2个框,分别是用户变量(只针对当前用户)和系统变量(用这个系统的都可以)对于我们来说设置哪个都行,方式配置也都一样,一...
  • Python解释器安装教程以及环境变量配置 对于一个程序员来说,能够自己配置python解释器是最基础的技能 那么问题来了,现在市面上有两种Python版本 Python 2.x 和 Python 3.x 要安装哪种呢? 虽然说 Python 2.x 过...
  • 通俗解释概率论与数理统计中随机变量X的含义 正文   为了解释清楚这一概念,以抛硬币实验为例,假设我们现在做了这样一个实验E:将一枚硬币抛掷三次,观察正面H、反面T出现的情况。我们可以列出所有可能的实验结果...
  • 环境变量基本操作及path环境变量

    万次阅读 多人点赞 2019-07-07 15:43:42
    环境变量基本操作及path环境变量环境变量解释 环境变量解释
  • c语言变量名、变量和地址的关系

    千次阅读 多人点赞 2019-05-08 12:00:56
    c语言变量名、变量和地址的关系 定义 变量:用来标识一块内存区域,即变量就是一块内存区域,而这个区域里面的值可以更改,故叫做‘变’量 变量名:是一个标识符,用来指代一块内存区域,即变量变量名并不占用内存...
  • 15种分类变量编码方法

    千次阅读 2021-02-16 11:04:34
    机器学习问题建模中,15种分类变量编码方法。
  • 文章目录1 理论介绍1.1 Instrumental variable解释1.2 因果推断中:内生性的一个有意思的例子1.2 与代理变量(proxy variable)的对比1.3 连玉君老师的简易解读2 econML实现 DeepIV 同系列可参考: 因果推断笔记...
  • 费尔南多选择了最好的模型。他建立了多元回归模型。该模型具有以下形状:价格= -55089.98 + 87.34X发动机尺寸+ 60.93X马力+ ...定性变量如何解释?费尔南多得到两个这样的定性变量:fuelType:使用的燃料类型。该值...
  • Python变量和数据类型详解

    千次阅读 2020-11-23 20:31:35
    基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。变量赋值Python 中的变量赋值不需要类型声明。每个变量在...
  • 机器学习中的变量选择——进阶篇

    万次阅读 2019-03-03 13:42:17
    变量选择在机器学习中扮演着重要的角色,无论是对于构建一个可解释的模型,还是提升模型的预测能力。 单变量筛选 在高维情况下,有时候我们需要预先筛选部分变量,然后再训练模型。筛选过程需要做到...
  • 11种常见的多变量分析方法

    万次阅读 多人点赞 2018-10-09 09:31:06
    在社会科学研究中,主要的多变量分析方法包括多变量方差分析(Multivariate analysis of variance,MANOVA)、主成分分析(Principal component analysis)、因子分析(Factor analysis)、典型相关(Canonical ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 293,145
精华内容 117,258
关键字:

怎么找被解释变量