楼主: xuaiwjj
20174 21

[编程问题求助] 如何实现将首次取值为1的年份及后续的年份赋值为1? [推广有奖]

11
小师傅 学生认证  发表于 2022-11-22 11:13:49
蓝色 发表于 2021-6-4 08:36
您好!想请问当后续年份数值为0或者缺失的情况下,怎么将首次取值为1的年份的样本后续的年份赋值为1呢?

12
小青龙就是我啦 发表于 2022-12-1 16:25:07
黃河泉 发表于 2022-3-13 09:55
那不就是全部都是 1 了吗?
同问,可以解答吗。黄老师

13
黃河泉 在职认证  发表于 2022-12-1 16:48:06
小青龙就是我啦 发表于 2022-12-1 16:25
同问,可以解答吗。黄老师
1. 什么问题?2. 你若要问程序,请用 (ssc install) dataex 附上相关`代表性’资料 (请尽量不要用截图或其他格式),以供回答者实验之用。请参考说明 https://bbs.pinggu.org/thread-5048204-1-1.htmlhttps://zhuanlan.zhihu.com/p/29911577

14
书虫娟娟 发表于 2023-2-3 12:39:24
蓝色 发表于 2021-6-4 08:36
只用了第15行代码,完美解决!感谢答主!不过我的问题与原贴问题基本一样,只要求首次取1年份以后的年份都同样取1.

15
书虫娟娟 发表于 2023-2-3 12:50:08
蓝色 发表于 2021-6-4 08:36
只用了第15行代码,完美解决!感谢答主!我的问题只希望首次出现1以后的其他年份都同样为1。

16
Sy123456whdydb 发表于 2023-3-17 16:30:46
书虫娟娟 发表于 2023-2-3 12:39
只用了第15行代码,完美解决!感谢答主!不过我的问题与原贴问题基本一样,只要求首次取1年份以后的年份都 ...
请问可以分享以下代码吗

17
书虫娟娟 发表于 2023-3-17 20:59:30
Sy123456whdydb 发表于 2023-3-17 16:30
请问可以分享以下代码吗
bys Stkcd : gen want=sum( X )   //X为变量名
replace want=1 if want>1      //暂时没有用到此条命令

18
峦雨的伞 发表于 2023-5-20 17:35:26
四季奶青与奶霜 发表于 2022-8-5 19:04
请问解决了吗,我的也是都变成了1
这个都变成1的原因是分组之后里面id的顺序打乱了,可以先xset定义id和year,然后在用分组gen依次求和,即使用他给的两行代码,就可以解决了。至少我是这么解决的。

19
toc7090335 发表于 2023-7-2 17:56:32
蓝色 发表于 2021-6-4 08:36
请问,如果只想首次出现非零值时,生成变量want=1,之前或者之后都等于0应该怎么写呀

20
喵″″ 发表于 2024-1-14 16:23:11
那如何将首次为1所在年份的下一年和此后年份设为1,当年及之前一年设为0呢?

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-24 07:47