首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

虚拟变量与面板数据单元识别符的生成

(1)生成虚拟变量

使用tab+gen

使用数据panel.dta

tab id,gen(idd)

gen+replace组合

gen ii=0 //产生一个值全部为的变量

replace ii=1 if id>10 //将id大于10的ii的观测值赋值为1

replace ii=2 if y2 //将y小于5且大于2的观测值定义为2

gen newvar=(varname>#)

意思是:满足>#的varnmae的值被定义为1,否则定义为;

gen y0=(y

gen y1=(y2) //y小于5且大于2个体定义为1,其余的定义为

注意:

如果数据中存在缺失值,缺失值将被归入不满足定义等号后的表达式的情况,因而进入各个虚拟变量中取值为的组;

autocode()+recode()

autocode(x,n,x0,x1) //函数recode()的自动版本;将从x0到x1的区间划分为n个等长区间(变量取值区间宽度相等),并求出各个x所在区间的上限;

recode(x,x1,x2,...,xn) //当x缺失时求得x,当x

使用上面数据panel,将y分成取值间隔相等的5组

geny5=autocode(id,5,1,30) //y5是新生成的变量,id是目标变量,5是分为5组,1是最小值,30是最大值

. use "G:\计量经济学资料\计量经济学资料\计量经济学:零基础到精通\计量经济学与Stata操作:入门到精通\wage.dta",clear

.gen tenure1=autocode(tenure,3,1,10)

. tab tenure1

将工作任期分为3组,分别是1-4年,5-7年,8-10年等3中情况;

.gen tenure2=recode(tenure,3,2,7,10) //分为4组,第一组的上限是2,第二组的上限是7,第三组的上限是10

.gen tenure3=recode(tenure,2,7,10) //分为3组,第一组的上限是2,第二组的上限是7,第三组上限是10

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191202A0S11B00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券