psm倾向得分匹配法举例_基于R:使用“lalonde”数据集探讨倾向值匹配方法(PSM)的效果...

2023-11-10

1. 导言

PSM,即倾向值匹配法,是处理社会研究反事实问题,以得到因果效应的重要技术之一(胡安宁,2020)。

概而言之,即先将多维的混淆变量降维成单维的倾向值,然后让接受实验处理的个体与未接受实验处理的个体基于倾向值进行匹配。当倾向值相同时,如果是否接受实验处理与混淆变量无关,且与潜在结果也无关,那么因变量的组间差异就是处理效应的无偏估计值。

对 PSM 方法,一个广泛的疑问是,同样是为了考虑控制变量,为何要进行繁琐的 PSM 而不是直接用回归模型呢?哈丁(转引自胡安宁,2020:96)指出,PSM相较传统回归有四点优势:

  1. 作为非参数模型,不受传统线性模型设定方式的限制;
  2. 保证了实验组和对照组的可比性
  3. 估计的系数更少,更加有统计效率。
  4. 由于只需要关心倾向值的匹配从而在实验组和控制组之间达成平衡,因此不需要考虑例如多重共线之类的问题。

结合本学期所学,本文使用R的tidyverseMatchIt两个程序包,对 lalonde 数据集进行分析:

library(haven)
library(tidyverse)
library(MatchIt)

通过与下面几种方式的估计值相比较,我将对 PSM 方法所发挥的作用进行简要分析

  • 求均值差
  • OLS回归分析
  • 随机实验
本文对Yisi Li的博客 有所参考,在此说明。

2. 数据集

2.1 数据来源

Nationl Supported Work Demonstration (NSW)是20世纪70年代在美国进行的一个项目。该项目会对缺少工作技能的弱势劳动者进行为期9-18个月的训练,从而帮助他们提升工作能力,改善他们在劳动市场中的不利地位。

与一般项目不同,它并未对所有符合条件的个体(e.g. 前“瘾君子”、前服刑人员和高中辍学者)都进行训练,而是随机将它们分成了两组,一组进行训练,另一组则不进行任何干预和帮助。我们可以分别称两组人为实验组对照组。研究者搜集了它们的人口学特征,并且记录了它们在1974,1975,以及培训后的1978年的收入情况。

此数据集被 Lalonde(1986) 和其他培训调查的数据进行了合并,共构造了两份数据。

  • 一份为NSW的原始数据,在R中,我们将其命名为Exp_data(下载地址):
  • 实验组
  • 对照组
Exp_data <- read_dta("nsw_dw.dta")[,-1] %>% as_tibble() # 读入数据
  • 一份为MatchIt包自带数据,包含了Exp_data内的实验组和通过其他渠道获得的伪对照组,这里的“伪”指非随机指派选定,但确实未接受过培训。在R中,我们将其命名为Obs_data,换句话说,Obs_data类似我们在抽样调查中得到的情况:
  • 实验组
  • 伪对照组
Obs_data <- lalonde %>% as_tibble()

我们对这两部分数据进行的处理,从而使其变量形式和命名一致,便于后续分析:

# 让变量名统一
Obs_data <- Obs_data[-4]
colnames(Exp_data) <- c("treat", "age", "educ", "black", "hispanic", "married", "nodegree", "
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

psm倾向得分匹配法举例_基于R:使用“lalonde”数据集探讨倾向值匹配方法(PSM)的效果... 的相关文章

  • QT include <string> 后仍提示 unknown type name ‘string‘ 解决方法

    解决方法 using namespace std
  • ubuntu16.04, 18.04和20.04换源

    第一步 备份原来的源文件 sudo cp etc apt sources list etc apt sources list backup 将sources list备份到sources list backup 第二步 替换源 sudo g
  • Vue思维导图

  • Leetcode刷题209. 长度最小的子数组

    给定一个含有 n 个正整数的数组和一个正整数 target 找出该数组中满足其和 target 的长度最小的 连续子数组 numsl numsl 1 numsr 1 numsr 并返回其长度 如果不存在符合条件的子数组 返回 0 示例 1
  • C++快速切换 头文件和源文件

    有没有一种快速的方法 将头文件中的声明 直接在源文件中自动写出来 毕竟头文件中已经有声明了 我只需要写具体实现就行了 没有必要把声明的部分再敲一遍 在 Visual Studio 中 你可以使用快速生成函数定义的功能来实现这一目标 这个功能
  • IT领域的发展规律

    1 摩尔定律 Intel公司的创始人Gordon Moore 即摩尔 曾经提出 集成电路的集成度会每两年翻一番 后来 大家把这个周期缩短到18个月 这也就形成了摩尔定律 即每18个月 计算机等IT产品的性能会翻一番 或者说相同性能的计算机等
  • 【2022最新Java面试宝典】—— SpringBoot面试题(44道含答案)

    目录 1 什么是 Spring Boot 2 为什么要用SpringBoot 3 SpringBoot与SpringCloud 区别 4 Spring Boot 有哪些优点 5 Spring Boot 的核心注解是哪个 它主要由哪几个注解组
  • Anaconda3 2023安装包下载及安装教程

    软件介绍 Anaconda 是一个开源的包 环境管理器 其包含了conda Python等180多个科学包及其依赖项 可以用于在同一个机器上安装不同版本的软件包及其依赖 并能够在不同的环境之间切换 安装步骤 1 选中下载好的安装包 右键选择
  • OpenGL驱动质量的事实现状(精简翻译版)

    原文 http richg42 blogspot com 2014 05 the truth on opengl driver quality html 一 厂商A 为大多数开发者所使用 功能最全 测试得最好 几乎是事实上的标准驱动 其驱动
  • 软件开发工具的作用

    软件开发不是工程更多的像是一门艺术 不但靠逻辑更需要靠直觉 软件开发中辅助设计的工具只是一个工具 不要为了工具而去用工具 发挥工具的好处 吸收使用多个工具 不生搬硬套 认识到每个工具都有其局限性 因为每个工具只是表述软件设计或者开发中的一个
  • 对于Excel界址点坐标批量转SHP方法——模型构建器

    关于Excel界址点批量转SHP 对界址点进行处理 将所有地块界址点全部放在一起 字段名 地块编号 唯一 拐点编号 X Y 必备 先将整个表加载到arcgis中然后导出 界址点 SHP 按照字段 编号 进行分类 组 模型构建器对 界址点 s
  • 阿里arthas web-console arthas-tunnel-server 支持wss

    arthas tunnel server 没有找到 wss web console js 线上需要https访问 无法在https中去访问 ws 需要支持wss 特殊修改处理下 arthas web console 源码下载 说明https
  • frp内网穿透搭建

    为什么需要内网穿透功能 从公网中访问自己的私有设备向来都是一件难事 自己的台式机 NAS等等设备 它们可能处于路由器后 或者运营商因为IP地址短缺不给你分配公网IP地址 果我们想直接访问这些设备 远程桌面 远程文件 SSH等等 一般来说要通
  • 如何在Jupyter Notebook中自由切换conda虚拟环境pythtorch_gpu

    一般情况 jupyter note在启动时 是与conda的默认虚拟环境 base root 连接 不能和新建虚拟环境pytorch gpu相连接 这需要安装一些插件来建立连接 需要安装的插件及过程 1 首先在conda中激活虚拟环境pyt
  • WDA学习笔记(一)环境准备

    前言 WDA目前在ABAP市场上有一定的需求 例如万科恒大碧桂园这些地产大佬们都用了一些BOPF的东西 多一个技能就多一些 机会 现在来系统了解一下WDA吧 WDA Web Dynpro For Aabap 和WDJ Web Dynpro
  • css多个class时的选择器用法

    http stackoverflow com questions 1041344 how can i select an element with multiple classes answertab active tab top 例如 a
  • dw超链接标签_Dreamweaver如何建立超链接?DW建立超链接方法介绍

    超级链接一般具有三个特点 蓝色 下划线 和手形标记 那么Dreamweaver如何建立超链接 下面小编就为大家介绍DW建立超链接方法 来看看吧 软件名称 Adobe Dreamweaver CS3 官方中文安装版软件大小 76 2MB更新时
  • 控制 matplotlib 子图大小

    效果图 代码 import numpy as np import matplotlib pyplot as plt 调整 matplotlib 子图的大小 x1 np linspace 0 0 5 0 x2 np linspace 0 0
  • Flink分布式执行包括调度、通信机制、检查点

    Flink的分布式执行包括两个重要的进程 master和worker 执行Flink程序时 多个进程参与执行 即作业管理器 Job Manager 任务管理器 Task Manager 和作业客户端 Job Client Flink程序需要

随机推荐

  • 考研DS备考

    23考研算法复习 一 图论相关算法 1 拓扑排序 2 最小生成树 2 1 Prim算法朴素实现 2 2 最小生成树Kruskal实现 3 最短路 3 1朴素版Dijkstra 3 2Bellman ford 3 3Floyd 二 排序相关算
  • Python 快速获取文件夹中的所有文件名,并保存到txt文件中

    下面的代码可以读取文件夹中的所有文件名 并记录到txt文件中 可以应用到如深度学习制作数据集等场景中 usr bin env python encoding utf 8 import os img path images img list
  • Windows防火墙阻止了远程调试

    问题 当调试数据库里的存储过程时提示 Windows防火墙当前阻止了远程调试 当接着打开SQL Server的时候提示 远程过程调用失败 解决办法 1 当遇到远程过程调试失败
  • windows下查看GPU使用率

    进入C Program Files NVIDIA Corporation NVSMI 在此处打开cmd 输入nvidia smi 第一行Driver Version 表示驱动是385 54 第二行中 第一行表示GPU序号 名字 Persis
  • python作业题

    1 输入三个坐标表示三角形的三个顶点 计算三角形的面积 import math x1 y1 x2 y2 x3 y3 eval input x1 y1 x2 y2 x3 y3 如果不在一条直线上就构成了三角形 if x1 x2 y1 y2 x
  • GMM-HMM在语音识别中的应用

    1 语音识别系统的基本结构 2 涉及算法 3 GMM高斯混合模型 3 1高斯混合模型的基本概念 高斯混合模型是指具有如下形式的概率分布模型 p y k 1k k y k p y arrowvert theta sum k 1 k alpha
  • docker redis单例安装

    环境 windows docker desktop 版本 19 03 12 1 下载redis的docker镜像 docker pull redis 6 0 8 2 设置docker共享目录 docker中的共享目录 即能将宿主的文件同步到
  • Pandas

    文章目录 1 什么是Pandas 2 Pandas的数据结构 2 1 Series 2 1 1 Series的创建 2 1 2 Series的属性 2 2 DataFrame 2 2 1 DataFrame的创建 2 2 2 DataFra
  • 在linux上odoo搭建

    一 配置Postgresql数据库 1 安装Postgresql root runner home sg os apt get install postgresql 2 配置postgresql 拷贝 var lib postgresql
  • Centos7五步安装Docker并解决docker官方镜像无法访问问题

    根据官方文档 https docs docker com install linux docker ce centos 搭建docker 1 卸载docker旧版本 sudo yum remove docker docker client
  • C++实现——小孩分糖果问题

    include
  • el-dialog组件实现可以拖拽移动功能

    面向百度编程的小白最近遇到一个el dialog实现拖拽移动的需求 翻了翻饿了么官网发现el dialog并没有关于这一块的属性方法 所以与大家分享一下有关的方法 首先新建一个js文件 directive js文件 用于详情对话框可移动 i
  • python4行代码实现九九乘法表

    九九乘法表是python的循环嵌套 两次利用range 相乘并输出 for i in range 1 10 for j in range 1 i 1 print sx s s j i i j end print
  • QThread线程的运行和退出

    关于QT退出线程 一直迷迷糊糊的 凑活着能用就行 出了问题总觉得莫名其妙 现在静下心来总结一下 感谢 QThread的用法 开启与退出 Qt QThread 这是我 见过解析最全面的一片文章 线程运行有两种方式 include
  • Python图像处理

    1 图像平滑 图像平滑是指受传感器和大气等因素的影响 遥感图像上会出现某些亮度变化过大的区域 或出现一些亮点 也称噪声 这种为了抑制噪声 使图像亮度趋于平缓的处理方法就是图像平滑 图像平滑实际上是低通滤波 平滑过程会导致图像边缘模糊化 图像
  • 关于FlashDB的应用-GD32F450上

    一 介绍 1 FlashDB是什么 是用于嵌入式的数据库存储 2 FlashDB谁整出来的 是armink 朱天龙 3 FlashDB依赖于什么 片内或者片外的Flash存储 FAL 4 FAL什么 FAL Flash Abstractio
  • 制作搭建宠物商城小程序,打造便捷的宠物购物体验

    随着宠物市场的不断发展 宠物商城小程序成为了满足宠物爱好者需求的重要工具 在现代社会 宠物已经成为人们生活中不可或缺的一部分 作为宠物爱好者 我们对于宠物食品 用品 医疗保健品等需求日益增长 而宠物商城小程序则为我们提供了一个便捷高效的购物
  • 在Matlab2018b中配置MinGW-w64 C/C++ 编译器

    在Matlab2018b跑代码时 输入mex setup 报错 错误使用 mex 未找到支持的编译器 您可以安装免费提供的 MinGW w64 C C 编译器 在 https jmeubank github io tdm gcc artic
  • 最详细的堆排序---排序算法,思路清晰动图讲解,五分钟搞懂!

    堆排序 同步微信公众号乐享Coding 欢迎你的关注 介绍 利用堆这种数据结构而设计的一种排序算法 堆排序是一种选择排序 它的最坏 最好 平均时间复杂度均为O nlogn 它是不稳定排序 对于堆排序 难点在于二叉树的顺序数组储存到大顶堆 小
  • psm倾向得分匹配法举例_基于R:使用“lalonde”数据集探讨倾向值匹配方法(PSM)的效果...

    1 导言 PSM 即倾向值匹配法 是处理社会研究反事实问题 以得到因果效应的重要技术之一 胡安宁 2020 概而言之 即先将多维的混淆变量降维成单维的倾向值 然后让接受实验处理的个体与未接受实验处理的个体基于倾向值进行匹配 当倾向值相同时