楼主: 南山2020
2820 4

[数据管理求助] stata如何有条件的保留行数,或者提出出来 [推广有奖]

  • 2关注
  • 0粉丝

本科生

7%

还不是VIP/贵宾

-

威望
0
论坛币
29 个
通用积分
1.0500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
235 点
帖子
11
精华
0
在线时间
125 小时
注册时间
2021-1-21
最后登录
2024-2-1

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
. sysuse auto, clear
(1978 Automobile Data)

. dataex price mpg in 1/20

----------------------- copy starting from the next line -----------------------
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input int(price mpg)
  4. 4099 22
  5. 4749 17
  6. 3799 22
  7. 4816 20
  8. 7827 15
  9. 5788 18
  10. 4453 26
  11. 5189 20
  12. 10372 16
  13. 4082 19
  14. 11385 14
  15. 14500 14
  16. 15906 21
  17. 3299 29
  18. 5705 16
  19. 4504 22
  20. 5104 22
  21. 3667 24
  22. 3955 19
  23. 3984 30
  24. end
复制代码

------------------ copy up to and including the previous line ------------------

像这种有多行的,如何保留 1 4 7 10 ··· 1+3n ··· (即每个3行保留,或者将这些行的观察值提取出来)?
谢谢大神指导。


二维码

扫码加我 拉你入群

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

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

关键词:Stata tata Automobile generated including

沙发
黃河泉 在职认证  发表于 2021-1-29 11:53:51 |只看作者 |坛友微信交流群
试试
  1. sysuse auto, clear
  2. *gen id = _n
  3. egen a = seq(), from(1) to(3)
  4. keep if a == 1
复制代码

使用道具

藤椅
zdlspace 学生认证  发表于 2021-1-29 13:53:30 |只看作者 |坛友微信交流群
黃河泉 发表于 2021-1-29 11:53
试试
黄老师的方案很棒,很简洁。我也提供一种思路吧,方便后来者参考:
  1. sysuse auto,clear
  2. gen d=1 if _n==1
  3. replace d=d[_n-3] if mi(d)
  4. keep if d==1
复制代码

使用道具

板凳
蓝色 发表于 2021-1-29 15:47:36 |只看作者 |坛友微信交流群
  1. gen id=mod(_n,3)
  2. keep if id==1
复制代码

使用道具

报纸
jxapp_4166 发表于 2021-1-29 22:51:58 |只看作者 |坛友微信交流群
  1. sysuse auto,clear
  2. gen id=.
  3. local j=_N
  4. forvalues i=1(3)`j'{
  5. replace id=1 in `i'
  6. }
  7. keep if id == 1
复制代码

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 02:08