全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
2294 6
2011-05-07
有一个census data 在处理时遇到难题想请教下大家。每个case包括个人变量以及个人所在的家庭变量。一个人的家庭编号是hhn,在家庭当中的个人编号是ppn,个人父亲在家庭当中的编号是psn,每个人的教育水平是edu。现在想要为每个人生产其父亲的教育水平变量edu_fa,不知该如何跨越case读取实现这种映射呢?



hhnppnpsneduedu_fa
110150
121515
131615
140140
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-5-7 08:28:11
对于“父亲的父亲”,如何取值?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-5-7 11:31:06
父亲的父亲若不在家庭内,则取值为99;如果在家庭内,则等于家庭成员编码。ppn 2# sungmoo
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-5-7 12:30:01
nihilist 发表于 2011-5-7 08:00 有一个census data 在处理时遇到难题想请教下大家。每个case包括个人变量以及个人所在的家庭变量。一个人的家庭编号是hhn,在家庭当中的个人编号是ppn,个人父亲在家庭当中的编号是psn,每个人的教育水平是edu。现在想要为每个人生产其父亲的教育水平变量edu_fa,不知该如何跨越case读取实现这种映射呢?
hhnppnpsneduedu_fa
110150
121515
131615
140140
bys hhn: egen m=max(psn)
bys
hhn: egen edu_fa=max((m==ppn)*edu)
replace
edu_fa=0 if psn==0
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-5-7 13:28:39
psn代表他的父亲在家庭中的编码,比如表中家庭1(hhn)中有四个人,分别给予编号1,2,3,4(ppn)。

第2,第3个人的父亲是第1个人,那么他们的psn=1。第1,第4个人的父亲不在家庭当中,编码为0。

edu_fa是要生产的新变量,代表一个人父亲的教育水平。比如第2,第3个人的父亲(第1个人)的教育水平为15,那么edu_fa就是要读取第一个人的edu数据。

我的问题是,应该如何生产edu_fa这个变量。不知有没有表述明白
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-5-8 00:37:31
假设你原来的数据集名称为census.dta

use census, clear
drop psn
rename ppn psn
rename edu edu_fa
save temp, replace
use census, clear
merge m:n hhn psn using temp
drop if _merge == 2
drop _merge
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群