did雙重差分法_Stata中雙重差分操流程及代碼

7377028122b84a117e7051f350d74be8.png

01

簡介

da007c94416de795064d8cf5e791774b.gif

現代計量經濟學和統計學的發展為我們的研究提供了可行的工具。倍差法來源于計量經濟學的綜列數據模型,是政策分析和工程評估中廣為使用的一種計量經濟方法。主要是應用于在混合截面數據集中,評價某一事件或政策的影響程度。該方法的基本思路是將調查樣本分為兩組,一組是政策或工程作用對象即“作用組”,一組是非政策或工程作用對象即“對照組”。根據作用組和對照組在政策或工程實施前后的相關信息,可以計算作用組在政策或工程實施前后某個指標(如收入)的變化量(收入增長量),同時計算對照組在政策或工程實施前后同一指標的變化量。然后計算上述兩個變化量的差值(即所謂的“倍差值”)。這就是所謂的雙重差分估計量(Difference in Differences,簡記DD或DID),因為它是處理組差分與控制組差分之差。該法最早由Ashenfelter(1978)引入經濟學,而國內最早的應用或為周黎安、陳燁(2005)。

常用的倍差法主要包括雙重倍差法和三重倍差法。雙重差分法(Difference-in-difference,DID)有幾種其他的稱謂:倍差法、差分再差分等。該方法的原理非常簡單,它要求數據期至少有兩期,所有的樣本被分為兩類:實驗組和控制組,其中實驗組在第一期是沒有受到政策影響,此后政策開始實施,第二期就是政策實施后的結果,控制組由于一直沒有受政策干預,因此其第一期和第二期都是沒有政策干預的結果。雙重差分方法的測算也非常簡單,兩次差分的效應就是政策效應。

雙重差分法的假定,為了使用OLS一致地估計方程,需要作以下兩個假定。?

假定1:此模型設定正確。特別地,無論處理組還是控制組,其時間趨勢項都是。此假定即“平行趨勢假定”(parallel trend assumption)。DID最為重要和關鍵的前提條件:共同趨勢(Common Trends)

雙重差分法并不要求實驗組和控制組是完全一致的,兩組之間可以存在一定的差異,但是雙重差分方法要求這種差異不隨著時間產生變化,也就是說,處理組和對照組在政策實施之前必須具有相同的發展趨勢。

假定2:暫時性沖擊與政策虛擬變量不相關。這是保證雙向固定效應為一致估計量(consist estimator)的重要條件。在此,可以允許個體固定效應與政策虛擬變量相關(可通過雙重差分或組內變換消去,或通過LSDV法控制)。

DID允許根據個體特征進行選擇,只要此特征不隨時間而變;這是DID的最大優點,即可以部分地緩解因 “選擇偏差”(selection bias)而導致的內生性(endogeneity)。

02

雙重差分操作案例

da007c94416de795064d8cf5e791774b.gif

Difference in differences (DID) Estimation step‐by‐step雙重差分操作步驟

首先我們讀入所需數據,生成政策前后以及控制組虛擬變量,并將它們相乘產生交互項。

方法一:

Getting sample data調用數據

use "http://dss.princeton.edu/training/Panel101.dta", clear

Create a dummy variable to indicate the time when the treatment started. Lets assume that treatment started in 1994. In this case, years before 1994 will have a value of 0 and 1994+ a 1. If you already have this skip this step.設置虛擬變量,政策執行時間為1994年

gen time = (year>=1994) & !missing(year)?

*Create a dummy variable to identify the group exposed to the treatment. In this example lets assumed that countries with code 5,6, and 7 were treated (=1). Countries 1-4 were not treated (=0). If you already have this skip this step生成地區的虛擬變量

gen treated = (country>4) & !missing(country)

* Create an interaction between time and treated. We will call this interaction ‘did’?產生交互項

gen did = time*treated

Estimating the DID estimator隨后將這三個變量作為解釋變量,y作為被解釋變量進行回歸:

reg y time treated did, r

結果為:

f1227fb5ed5e6b5a5b9cadf910cbbb80.png

did的系數顯著為負,表明政策實施對Y有顯著的(10%顯著性水平下)負效應

方法二:diff

The command diff is user‐defined for Stata,To install type?

ssc install diff下載外部命令方法

diff y, t(treated) p(time)

f66556ffec84a8fe97556e298b5f7d04.png

f5c675fcb54358e11828c7bc2aa037b7.png

03

雙重差分平行趨勢檢驗

da007c94416de795064d8cf5e791774b.gif

平行趨勢檢驗

首先生成年份虛擬變量與實驗組虛擬變量的交互項,此處選在政策前后各3年進行對比。

gen period = year - 1994
forvalues i = 3(-1)1{

gen pre_`i' = (period == -`i' & treated == 1) }
gen current = (period == 0 & treated == 1)
forvalues j = 1(1)3{
gen ?time_`j' = (period == `j' & treated == 1)

?}

隨后將這些交互項作為解釋變量進行回歸,并將結果儲存在reg中以備后續檢驗。?

xtreg y??time??treated pre_* current??time_* i.year, fe?

est sto reg

采用coefplot命令進行繪圖,觀察是否1994年前的回歸系數均在0軸附近波動,在1994年后回歸系數顯著為負。

coefplot reg, keep(pre_* current post_*) vertical recast(connect) yline(0) xline(3, lp(dash))

81bbf4cd6347d5dea612b6ce228c56a5.png

結果發現系數在政策前的確在0附近波動,而政策后一年系數顯著為負,但很快又回到0附近。這說明實驗組和控制組的確是可以進行比較的,而政策效果可能出現在頒布后一年,隨后又很快消失。

522502340cdb7bd630dd1765c688250f.png

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/275993.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/275993.shtml
英文地址,請注明出處:http://en.pswp.cn/news/275993.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Axios 如何緩存請求數據?

大家好,我是若川。歡迎加我微信 ruochuan12,長期交流學習。今天推薦這篇Axios緩存請求數據的文章,相信是常見的業務場景,感興趣的讀者可以看看 umi-request,支持緩存功能。另外我之前也寫過 axios源碼文章,…

Reflection in .net

最近在看設計模式的一些東西,在講到builder模式中使用到了c#的反射機制,從網上找了寫資料,整理如下: 在C#中,我們要使用反射,首先要搞清楚以下命名空間中幾個類的關系: System.Reflection命名空間(1) App…

山西萬榮盛裝迎新春 首屆群眾文化藝術節啟幕

山西萬榮盛裝迎新春,首屆群眾文化藝術節啟幕。 李繼旺 攝 山西萬榮盛裝迎新春,首屆群眾文化藝術節啟幕。 李繼旺 攝 中新網太原1月29日電 (任麗娜)璀璨閃耀的寶鼎廣場花燈展、激情活力的群眾文體賽事、精彩紛呈的紅火熱鬧、精品年貨展銷、李家大院游園會…

MySQL 隱式轉換 字符串和整型說明

MySQL 隱式轉換 字段類型定義 CREATE TABLE user (id int(10) NOT NULL AUTO_INCREMENT COMMENT 編號,/* ...... */name varchar(10) NOT NULL DEFAULT COMMENT 姓名,/* ...... */PRIMARY KEY (id),KEY idx_name (name,nickname),/* ...... */ ) ENGINEInnoDB DEFAULT CHARSE…

安裝vs2017出現閃退現象_Adobe Reader 閃退

在我們的日常辦公、學習中經常會涉及到 PDF 文件,免不了需要處理 PDF 文件如:PDF轉Word、PDF合并、導出成圖片、PDF解密、PDF轉PPT、PDF加水印、PDF簽名等等。PDF是與平臺無關的文件格式,無論在哪種打印機上都可保證精確的顏色和準確的打印效…

從Vue.js源碼中我學到的幾個實用函數

大家好,我是若川。歡迎加我微信 ruochuan12,長期交流學習。今天推薦Vuejs源碼中幾個實用的方法。如果想看Vuejs源碼,不知道如何下手,一般推薦配置Sourcemap,針對單個問題調試來看,如何調試Vuejs源碼&#x…

real類型_如何使用REAL方法對您的Web內容進行現實檢查

real類型Web內容審核模板 (Web content audit template) I recently completed a website audit project for a nonprofit organization through CatchAFire.org. As part of the website audit, I audited every key page’s content, looking for areas of opportunity.我最近…

青海行--(7月26日)翻越祁連山

嘉峪關是最值得一寫的,雖然也是著名的旅游城嘉峪關景點是國家AAAAA級景區,但與敦煌完全不一樣,沒有人山人海的游客,門票也不貴,才10&a…

TikTok真題第1天 | 666.路徑和IV、 207.課程表、210.課程表||

666.路徑和IV 題目鏈接:666.路徑和IV 解法: 參考這篇題解:【LeetCode - 666】路徑和 IV_力扣666路徑總和4-CSDN博客 關鍵點在于: (1)使用map來存node:key 為整數的前兩位,value…

導出Excel

2019獨角獸企業重金招聘Python工程師標準>>> 思路: 1, 引入Excel類庫; 2, 創建一個模板; 3, 將數據填充進去; 4, 生成文件; 下面是一個簡單的示例 $phpExcelObj new PHPExcel(); $titleMap self::TITLE_MAP; //設置表頭 $i 0; foreach ($titleMap as $key > $…

CentOS系統更換yum源(repomd.xml not found解決方案)

CentOS系統更換yum源 問題 當初瞎鼓搗服務器,更換yum源為aliyun的,奈何阿里的源最近全部打不開,導致yum安裝不了,一直報錯: http://mirrors.aliyun.com/centos/6/os/x86_64/repodata/repomd.xml: [Errno 14] PYCURL E…

在類中用class時數據是共有還是私有_jvm學習筆記之class文件的加載、初始化

編寫的java文件在要真正運行時,會首先被編譯成 “.class"結尾的二進制文件,然后被虛擬機加載。那么在虛擬機中一個class文件要成為java實例,需要經歷好幾個步驟:1、裝載:裝載階段由三個基本動作完成,要…

所有前端都要看的2D游戲化互動入門基礎知識

背景現在越來越多的公司和APP開始使用游戲化的方式去做產品了,所謂游戲化,是指在非游戲環境中將游戲的思維和游戲的機制進行整合運用,以引導用戶互動和使用的方法。支付寶里面的螞蟻莊園、螞蟻森林,通過游戲和公益的結合實現用戶的…

江蘇一動物園現“旋轉活馬” 園方:創意來自馬術訓練

中新網南通1月31日電 (記者唐娟)“旋轉馬設備采用同時容納六匹馬的遛馬器組裝而成,對馬匹沒有任何傷害,初衷是希望給小朋友一種全新體驗,這才有了這個創意項目。”1月31日,針對活馬版“旋轉木馬”引發的熱議,江蘇南通森…

Byte數組轉換成string 的方法積累

.net的加密算法,返回的都是byte[] 類型,在存貯起來讓人非常頭疼,最簡單的方法就是把byte[]轉換成string來存貯,當然如果數據量大的話,另當別論。 所以我就把byte[]轉換成string的方法做一個簡單的積累與分析。目前有3種…

加快信息化建設對地方發展的_加快設計師職業發展的9種方法

加快信息化建設對地方發展的重點 (Top highlight)Over the past few months, I have had an increase in conversations with design students from various institutions, as well as early, to senior-level designers, researchers, & product managers from various co…

Docker:Nginx-Redis-Mysql-PHP 部署

Docker:Nginx-Redis-Mysql-PHP 部署 網絡橋接 Docker容器之間默認網絡隔離,需要使用橋接網絡進行互通 創建網絡 docker network create net-local docker network ls NETWORK ID NAME DRIVER SCOPE da9c8fc3dc80 bridge bridge local 78641…

epoll監聽文件_介紹一下 Android Handler 中的 epoll 機制?

介紹一下 Android Handler 中的 epoll 機制?目錄:IO 多路復用select、poll、epoll 對比epoll APIepoll 使用示例Handler 中的 epoll 源碼分析IO 多路復用IO 多路復用是一種同步 IO 模型,實現一個線程可以監視多個文件句柄。一旦某個文件句柄就…

前端工程師的一大神器——puppeteer

大家好,我是若川。歡迎加我微信 ruochuan12,長期交流學習。今天推薦神器puppeteer,我猜有挺多人不知道。文章不長,看完有空也可以試玩。我18年也寫過一篇puppeteer爬取生成pdf的文章,時間真快。前端使用puppeteer 爬蟲…

selenium界面元素定位

一、 Selenium界面元素定位 本文元素定位以das2為例 #導入包 from selenium import webdriver #打開火狐驅動 driverwebdriver.Firefox() #訪問網址 driver.get("http://192.168.3.217:8080/das/seatlogin.jsp ") 進行web頁面自動化測試,對頁面上…