1941 4

[编程问题求助] 求助怎么生成满足条件的变量 [推广有奖]

  • 3关注
  • 5粉丝

已卖:87份资源

副教授

44%

还不是VIP/贵宾

-

威望
0
论坛币
936 个
通用积分
44.8629
学术水平
2 点
热心指数
8 点
信用等级
2 点
经验
19102 点
帖子
516
精华
0
在线时间
807 小时
注册时间
2015-3-8
最后登录
2025-11-21

楼主
人生若只如初见~ 发表于 2020-7-17 23:45:28 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
数据是非平衡面板数据,有3个变量id year va,要生成一个变量x
x满足的条件是,对于每一个x,不管对应的年份是哪一年,x都取相应id的2012年的变量va的值
请问怎么用by id实现呀


二维码

扫码加我 拉你入群

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

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

关键词:非平衡面板数据 非平衡面板 面板数据 平衡面板 year

111117.png (11.69 KB)

111117.png

回帖推荐

DΘstinyじò 发表于2楼  查看完整内容

方法一: 方法二:

沙发
DΘstinyじò 发表于 2020-7-18 12:57:37
方法一:
  1. bys id: gen x=va if year==2012
  2. bys id (x): replace x=x[1]
  3. sort id year
复制代码

方法二:
  1. preserve
  2. keep if year==2012
  3. rename va x
  4. save temp.dta,replace
  5. restore
  6. merge m:1 id using temp
复制代码
已有 1 人评分论坛币 学术水平 热心指数 收起 理由
人生若只如初见~ + 1 + 1 + 1 热心帮助其他会员

总评分: 论坛币 + 1  学术水平 + 1  热心指数 + 1   查看全部评分

藤椅
人生若只如初见~ 发表于 2020-7-18 15:09:46
DΘstinyじò 发表于 2020-7-18 12:57
方法一:

方法二:
谢谢您的解答!达到了预期效果。
请问这句代码里(x)和x[1]分别是什么含义呢
  1. bys id (x): replace x=x[1]
复制代码

板凳
DΘstinyじò 发表于 2020-7-18 17:16:09
人生若只如初见~ 发表于 2020-7-18 15:09
谢谢您的解答!达到了预期效果。
请问这句代码里(x)和x[1]分别是什么含义呢
按照id 分组,按id和x进行sort,之前gen的时候,就是符合year==2012的有数据的会排到每组第一个,“.”会排到后面,替换“.”每组的第一个,也即是x[1]就会得到你想要的。

报纸
人生若只如初见~ 发表于 2020-7-18 17:21:56
DΘstinyじò 发表于 2020-7-18 17:16
按照id 分组,按id和x进行sort,之前gen的时候,就是符合year==2012的有数据的会排到每组第一个,“.”会 ...
十分感谢

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

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