楼主: w1w2jack
964 2

[数据管理求助] group 的问题 [推广有奖]

  • 0关注
  • 0粉丝

已卖:431份资源

副教授

7%

还不是VIP/贵宾

-

威望
0
论坛币
489 个
通用积分
4.8006
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
4558 点
帖子
134
精华
0
在线时间
1086 小时
注册时间
2008-12-27
最后登录
2025-12-30

楼主
w1w2jack 发表于 2017-3-31 21:59:17 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
假设原始数据为x和y。z为想要得到的数据,即,z为给定x时,对y进行group。可是用egen z=group(y), by(x)时出错,“egen ... group() may not be combined with by”。如何才能用命令根据x和y得到z呢?谢谢大家了
x     y      z
1     4     1
1     4     1
1     5     2
1     5     2
2     7     1
2     5     2
2     5     2
2     4     3
2     4     3

二维码

扫码加我 拉你入群

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

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

关键词:Group combined combine egen With

沙发
黃河泉 在职认证  发表于 2017-4-1 09:49:29
Clyde Schechter 提供下列作法:
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input float(x y)
  4. 1 4
  5. 1 4
  6. 1 5
  7. 1 5
  8. 2 7
  9. 2 5
  10. 2 5
  11. 2 4
  12. 2 4
  13. end

  14. gen long obs_no = _n
  15. by x (obs_no), sort: gen z = sum(y != y[_n-1])
  16. drop obs_no
复制代码
其之 trick 可见 Clyde Schechter 之说明:http://www.statalist.org/forums/ ... 412-generate-groups

藤椅
黃河泉 在职认证  发表于 2017-4-1 17:09:30
楼主问问题有附上代表性资料与想要结果,值得其他人学习,而且容易得到回应!如若能用 dataex (https://bbs.pinggu.org/thread-5048204-1-1.html)将资料印出那就更好了!

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

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