楼主: nihilist
2349 6

求助stata生成父母变量 [推广有奖]

  • 0关注
  • 0粉丝

已卖:160份资源

本科生

31%

还不是VIP/贵宾

-

威望
0
论坛币
2290 个
通用积分
1.7748
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
299 点
帖子
18
精华
0
在线时间
148 小时
注册时间
2007-8-6
最后登录
2025-10-24

楼主
nihilist 发表于 2011-5-7 08:00:26 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
有一个census data 在处理时遇到难题想请教下大家。每个case包括个人变量以及个人所在的家庭变量。一个人的家庭编号是hhn,在家庭当中的个人编号是ppn,个人父亲在家庭当中的编号是psn,每个人的教育水平是edu。现在想要为每个人生产其父亲的教育水平变量edu_fa,不知该如何跨越case读取实现这种映射呢?



hhnppnpsneduedu_fa
110150
121515
131615
140140
二维码

扫码加我 拉你入群

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

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

关键词:求助stata Stata tata Census 教育水平 求助 变量 Stata 父母

沙发
sungmoo 发表于 2011-5-7 08:28:11
对于“父亲的父亲”,如何取值?

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

板凳
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

报纸
nihilist 发表于 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这个变量。不知有没有表述明白

地板
jonathanjp 发表于 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

7
llg79 发表于 2011-5-8 20:31:13
呵呵,学习了

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-25 23:17