练练手, 分享一份完整复制出文章的实证结果的数据和代码

稿件:econometrics666@126.com

所有计量经济圈方法论丛的code程序, 宏微观数据库和各种软件都放在社群里.欢迎到计量经济圈社群交流访问.
近日,收到一群友投稿,为各位青年学者,尤其是研究生,分享了一份文章的代码和数据。可以完整复制出文章的实证结果,各位有需要的,可以以此练练手。
欢迎各位群友积极投稿分享研究过程,代码和数据等。
*注:文章信息和数据及代码都在文后。

cd "C:\Users\xiwan\Desktop"

use cgss2013_14.dta, clear

quietly {

gen year=2013
capture drop Female
gen Female = a2-1
label var Female "if female"
recode a7a (1=0) (2 3=1) (4=2) (5/8=3) (9 10=4) (11/13=5) (else=.), gen(Education)
label var Education "education level"
recode a501 (1=0) (0=1) (else=.), gen(Religion)
gen Age = 2013 - a3a
gen Age2 = Age^2
capture drop Urban
recode s5a (5=0) (1 2 3 4=1)(else=.), gen(Urban)
label var Urban "urban area"
gen Inc = a8a if inrange(a8a,0,1000000)
label var Inc "total income"
capture drop Lninc
gen Income = ln(Inc+1)
recode a10 (3 4=0)(1=1) (else=.), gen(CPC)
label var CPC "if CP member"
recode a89c (1=1)(2/4=0)(else=.), gen(F_CPC)
label var F_CPC "if father CP member"
recode a90c (1=1)(2/4=0)(else=.), gen(M_CPC)
label var M_CPC "if mather CP member"
recode a89g (1 3 6=1)(2 4 5=0)(else=.), gen(F_Unit)
label var F_Unit "Father's work unit"
gen Health = a15 if a15>0  //越大越健康
recode a311 (1/2=1) (3=2) (4/5=3) (else=.), gen(S_Activity)
recode a44 (1=1) (2=0) (else=.), gen(Vote)
*fixed effect
gen Prov = s41
label var Prov "province"
recode a43a (1/2=1) (3=2) (4=3) (5=4) (6=5) (7/10=6) (else        =.),gen(S_Class)
label var S_Class "your social status"
recode b1 (3=1)(1 2=0)(else=.), gen(Hstatus)
recode b2 (3=1)(1 2=0)(else=.), gen(Vstatus)
recode a89b (1=0) (2 3=1) (4=2) (5/8=3) (9 10=4) (11/13=5)        (else=.), gen(F_Edu)
recode a90b (1=0) (2 3=1) (4=2) (5/8=3) (9 10=4) (11/13=5)        (else=.), gen(M_Edu)
gen P_Education = round(max(F_Edu, M_Edu))
gen P_CPC = 1 if F_CPC ==1 | M_CPC==1
replace P_CPC = 0 if P_CPC==.
recode b24 (1=0)(2=1)(3=2)(4=3)(5=4)(else=.), gen(Evaluate1)
recode b23 (1=0)(2=1)(3=2)(4=3)(5=4)(else=.), gen(Evaluate2)
gen Evaluation = Evaluate1 + Evaluate2
recode b2201 (3=2)(2=1)(1=0)(else=.), gen(Category1)
recode b2202 (3=2)(2=1)(1=0)(else=.), gen(Discuss1)
recode b2203 (3=2)(2=1)(1=0)(else=.), gen(Bag1)
recode b2204 (3=2)(2=1)(1=0)(else=.), gen(Recycle1)
recode b2205 (3=2)(2=1)(1=0)(else=.), gen(Donate1)
recode b2206 (3=2)(2=1)(1=0)(else=.), gen(Attention1)
recode b2207 (3=2)(2=1)(1=0)(else=.), gen(Promote1)
recode b2208 (3=2)(2=1)(1=0)(else=.), gen(Participate1)
recode b2209 (3=2)(2=1)(1=0)(else=.), gen(Forest1)
recode b2210 (3=2)(2=1)(1=0)(else=.), gen(Solution1)
gen EPB = Category1 + Discuss1 + Bag1 + Recycle1 + Donate1 + Attention1 + Promote1 + Participate1 + Forest1 + Solution1
gen DEPB = Category1 + Bag1 + Recycle1
gen PEAP =  Discuss1 + Donate1 + Attention1 + Promote1 +Participate1 + Solution1
gen Environment3 =Donate1 +Promote1 + Participate1 + Forest1 + Solution1
recode a285 (1=0)(2=1)(3=2)(4=3)(5=4)(else=.), gen(Internet)
bysort s44: egen meanx=mean(Internet)
by s44: egen ctx = count(Internet)
gen Internetc = (meanx*ctx-Internet)/(ctx-1)
drop if Internetc < 0
recode a284 (1=0)(2 3 4 5=1)(else=.), gen(television)
recode a283 (1=0)(2 3 4 5=1)(else=.), gen(broadcast)
recode a282 (1=0)(2 3 4 5=1)(else=.), gen(magazine)
recode a281 (1=0)(2 3 4 5=1)(else=.), gen(newspaper)

**测度环保知识:正确回答问题的个数或正确回答问题的个数占总问题的比例

recode b2501 (2=1)(1 3=0)(else=.), gen(Env1)
recode b2502 (1=1)(2 3=0)(else=.), gen(Env2)
recode b2503 (2=1)(1 3=0)(else=.), gen(Env3)
recode b2504 (1=1)(2 3=0)(else=.), gen(Env4)
recode b2505 (2=1)(1 3=0)(else=.), gen(Env5)
recode b2506 (1=1)(2 3=0)(else=.), gen(Env6)
recode b2507 (2=1)(1 3=0)(else=.), gen(Env7)
recode b2508 (1=1)(2 3=0)(else=.), gen(Env8)
recode b2509 (2=1)(1 3=0)(else=.), gen(Env9)
recode b2510 (1=1)(2 3=0)(else=.), gen(Env10)
gen Knowleadge = Env1 + Env2 + Env3 + Env4 + Env5 + Env6 + Env7 + Env8 + Env9 + Env10

**测度对当地环境污染问题的了解情况

recode b21a01 (1=1)(2=0)(else=.), gen(Sense1)
recode b21a02 (1=1)(2=0)(else=.), gen(Sense2)
recode b21a03 (1=1)(2=0)(else=.), gen(Sense3)
recode b21a04 (1=1)(2=0)(else=.), gen(Sense4)
recode b21a05 (1=1)(2=0)(else=.), gen(Sense5)
recode b21a06 (1=1)(2=0)(else=.), gen(Sense6)
recode b21a07 (1=1)(2=0)(else=.), gen(Sense7)
recode b21a08 (1=1)(2=0)(else=.), gen(Sense8)
recode b21a09 (1=1)(2=0)(else=.), gen(Sense9)
recode b21a10 (1=1)(2=0)(else=.), gen(Sense10)
recode b21a11 (1=1)(2=0)(else=.), gen(Sense11)
recode b21a12 (1=1)(2=0)(else=.), gen(Sense12)
gen Sense = Sense1 + Sense2 + Sense3 + Sense4 + Sense5 + Sense6 + Sense7 + Sense8 + Sense9 + Sense10 + Sense11 + Sense12
merge m:1 s41 using pollute.dta, gen(merge)
keep if merge==3   //与从中国环境统计年鉴中的数据污染数据合并, pollute为省级废水排放总量、二氧化硫排放总量、氮氧化物排放总量、烟(粉)尘排放总量、工业固体废物产生量5个指标(单位为万吨)
gen Pollution = pollution

global yx EPB DEPB PEAP Internet Female Urban CPC Education Income Religion Health S_Activity S_Class Vote Age Age2 Pollution F_Unit P_CPC P_Education

foreach y of global yx {

drop if `y'==.
save sample.dta, replace
}

}

use sample.dta, clear

/*****************************************

实证结果

******************************************/

quietly {

/*****************************************

Table 1.

******************************************/

global yx1 EPB Internet Female Urban CPC Education Income Religion Health S_Activity S_Class Vote Age Age2 Pollution F_Unit P_CPC P_Education
tabstat $yx1 Knowleadge Sense Evaluation, stat(N mean sd min max) format(%6.3f) save
matrix s0 = r(StatTotal)
putexcel set table1.xlsx, replace
putexcel A1 = ("descriptive statistics")
putexcel A2 = matrix(s0)
putexcel clear

/*****************************************

Table 2

******************************************/

global xlist2 Female Urban CPC Education Income Religion Health S_Activity S_Class Vote Age Age2 Pollution i.Prov
global xlist3 Female Urban CPC Education Income Religion Health S_Activity S_Class Vote Age Age2 Pollution F_Unit P_CPC P_Education i.Prov
oprobit EPB Internet i.Prov, vce(robust)
est store m11
oprobit EPB Internet $xlist2, vce(robust)
est store m21
oprobit EPB Internet $xlist3, vce(robust)
est store m31
reg EPB Internet i.Prov, vce(robust)
est store m1
reg EPB Internet $xlist2, vce(robust)
est store m2
reg EPB Internet $xlist3, vce(robust)
est store m3

/*****************************************

Table 3

******************************************/

gen age =1 if Age>=17 & Age<= 30  //青年群体
replace age = 2 if Age>=31 & Age<=44   //
replace age = 3 if  Age>=45 & Age<=64  //中年群体
replace age = 4 if   Age>=65  //中年群体
reg EPB c.Internet##i.age $xlist3, vce(robust)  //年长一些互联网效应更为明显
est store mm1
oprobit EPB c.Internet##i.age $xlist3, vce(robust)  //年长一些互联网效应更为明显
est store mmm1
gen Rural = 1 - Urban
reg EPB c.Internet##i.Rural $xlist3, vce(robust)  //农村地区互联网效应更为明显
est store mm2
oprobit EPB c.Internet##i.Rural $xlist3, vce(robust)  //农村地区互联网效应更为明显
est store mmm2
sum Income, detail
gen lowincome = 1 if Income < 9.615872
replace lowincome = 0 if Income >=  9.615872
reg EPB c.Internet##i.lowincome $xlist3, vce(robust)  //收入越低互联网效应更为明显
est store mm3
oprobit EPB c.Internet##i.lowincome $xlist3, vce(robust)  //收入越低互联网效应更为明显
est store mmm3

/*****************************************

Table 4

******************************************/

eoprobit EPB $xlist3, endog(Internet = Internetc $xlist3)
est store miv1
ivreg2 EPB $xlist3 (Internet = Internetc), first
est store miv2

/*****************************************

Table 5

******************************************/

ivreg2 EPB Knowleadge $xlist3 (Internet = Internetc), first
est store ma1
ivreg2 EPB Sense $xlist3 (Internet = Internetc), first
est store mb1
ivreg2 EPB Knowleadge Sense $xlist3 (Internet = Internetc), first
est store mc1
ivreg2 EPB Evaluation $xlist3 (Internet = Internetc), first
est store md1

/*****************************************

Table 6

******************************************/

eoprobit DEPB $xlist3, endog(Internet = Internetc $xlist3)
est store xm1
eoprobit PEAP $xlist3, endog(Internet = Internetc $xlist3)
est store xm2
eoprobit EPB television broadcast newspaper $xlist3, endog(Internet = Internetc $xlist3)
est store xm3
ivreg2 DEPB $xlist3 (Internet = Internetc), first
est store xm11
ivreg2 PEAP $xlist3 (Internet = Internetc), first
est store xm21
ivreg2 EPB television broadcast newspaper $xlist3 (Internet = Internetc), first
est store xm31

/*****************************************

输出回归结果

******************************************/

esttab m11 m21 m31 m1 m2 m3 using Table2.rtf, pr2 b(%9.3f) star(* 0.1 ** 0.05 *** 0.01) se r2 replace  //Table 2
esttab mmm1 mmm2 mmm3 mm1 mm2 mm3 using Table3.rtf, keep(2.age#c.Internet 3.age#c.Internet 4.age#c.Internet 1.Rural#c.Internet 1.lowincome#c.Internet ) pr2 b(%9.3f) star(* 0.1 ** 0.05 *** 0.01) se r2 replace //Table 3
esttab miv1 miv2 using Table4.rtf, keep(Internet Internetc) pr2 b(%9.3f) star(* 0.1 ** 0.05 *** 0.01) se r2 replace  //Table 4
esttab miv2 ma1 mb1 mc1 md1 using Table5.rtf, keep(Internet Knowleadge Sense Evaluation) pr2 b(%9.3f) star(* 0.1 ** 0.05 *** 0.01) se r2 replace  //Table 5
esttab xm1 xm2 xm3 xm11 xm21 xm31 using Table6.rtf, keep(Internet television broadcast newspaper) pr2 b(%9.3f) star(* 0.1 ** 0.05 *** 0.01) se r2 replace  //Table 6

}

***脚注⑥的回归结果

oprobit Knowleadge Internet $xlist3, vce(robust)
est store x1
oprobit Sense Internet $xlist3, vce(robust)
est store x2
oprobit Evaluation Internet $xlist3, vce(robust)
est store x3
esttab x1 x2 x3 using jiaozhu6.rtf, keep(Internet) pr2 b(%9.3f) star(* 0.1 ** 0.05 *** 0.01) se r2 replace  //脚注⑥

数据和代码下载地址:https://doi.org/10.7910/DVN/GPC4DI

进入之后,选择右下方的“RAR Archive”下载即可。
文章来源:
互联网使用提升了个体环保参与度吗?[J].环境经济研究,2021,6(02):100-119.

(0)

相关推荐

  • 从零使用强化学习训练AI玩儿游戏(3)

    本文目前主要是写给自己的一个笔记,接下来这段时间会逐步记录我是怎么通过学习使用TensorFlow+Keras训练神经网络自己玩儿游戏,如果能间接帮助到他人就最好不过了,不喜勿喷. 上一篇我们已经找到 ...

  • 练习R:car包recode函数多分类变量的重新编码

    雇员数据中,教育年限变量原本有10个水平,不长不短很难受,不利于有关统计结果解读. 我希望把它压缩一下,将原来的10个水平重新编码为4个水平.翻译为国内的意思就是,1初中及以下,2高中,3大学,4研究 ...

  • RocksDB事务的隔离性分析

    Rocksdb事务隔离性指的是多线程并发事务使用时候,事务与事务之间的隔离性,通过加锁机制来实现,本文重点剖析Read Commited隔离级别下,Rocksdb的加锁机制. Rocksdb事务相关类 ...

  • Python学习之路【第一篇】

    1.1 Python是什么相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是一种开发语言,而且已经进 ...

  • 一位金牌退役操盘手良心发现:分享一套完整的交易策略,领悟寒门也能出富翁!

    股谚云:上帝总是帮助自助者.如果一个投机者自己不能拯救自己,谁还能帮得了他呢? 例如,在股票交易中,我们曾经日复一日.年复一年地犯着同样的错误.判断失误时不及时止损.逆势交易.孤注一掷.急躁冲动,等等 ...

  • 3个月内如何快速复制出裂变操盘手

    分销活动概述 分销活动是裂变最常用到的活动玩法之一,也是我们俗称的"老带新",通过激励现有老用户分享,邀请新用户,达到精准拉新的业务目标. 首先,选择分销裂变玩法,需要具备3个核心 ...

  • 零一3个月内如何快速复制出裂变操盘手

    在上篇中,我们向大家阐述了操盘[分销裂变]活动的部分前置准备路径:分销活动概述.项目立项会.活动排期表.数据预估表.竞品分析.用户调研,活动方案等7个维度. 在今天下半部分,我们会从: 海报包装 活动 ...

  • 分享绣球花剪纸手工,简单易学,都来练练手吧

    它叫绣球花,大概是因为它的外形长得像一个绣球,所以因此而得名,绣球花,又名八仙花.紫阳花.七变花.粉团花.洋绣球等,原产于中国四川一带及日本. 中国栽培绣球花的时间较早,在明.清时代建造的江南园林中都 ...

  • 分享两个漂亮的花手帕剪纸,初学者拿来练练手

    如果你小时候玩过丢手帕的游戏,那你一定还记得那首儿歌,"丢.丢.丢手绢,轻轻地放在小朋友的后面,大家不要告诉他,快点快点抓住他--"这是著名音乐家关鹤岩在延安创作的儿歌." ...

  • 一份完整的机房管理制度,必须包括这些内容

    关于机房管理制度, 一直都有不少朋友问起,这个对于机房管理与维护是必须的,完善机房管理制度可以使用长期稳定的使用,减少故障率的发生,在我们弱电VIP技术群中也是有不少朋友经常问起. 本期我们来看下这方 ...

  • 分享一份烧烤秘籍配方(附各种腌制、流行酱汁、单品、妙招)

    名厨汇 2019-02-03 做烧烤要怎么腌制原料? 不管是普通的羊肉串,还是异域风味的韩国烤肉.巴西烤肉,肉料都是需要腌制的.说到腌制,必然要牵扯到腌制配方,所以我们先来看看以下几位烧烤高手,是如何 ...

  • 资深操盘手分享:简单实用的BOLL使用技巧

    简称是根据统计学中的标准差原理设计出来的一种非常实用的技术指标.它由三条轨道线组成,其中上下两条线分别可以看成是价格的压力线和支撑线,在两条线之间是一条价格平均线,一般情况价格线在由上下轨道组成的带状 ...

  • 一位操盘手分享:五大分时卖出信号,学习学习!

    一.分时图的构成要素 通过对大盘分时图与个股分时图的介绍,大致可以把分时图的构成分为3个要素:分时线.均价线和成交量,这些因素是看分时图的关键因素,也是分时图集中反映信息最为主要的途径 1.分时线 分 ...