609 2

[问答] 求助sas如何在根据多个不同变量生成序列号 [推广有奖]

  • 0关注
  • 0粉丝

学前班

60%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
53 点
帖子
2
精华
0
在线时间
1 小时
注册时间
2022-8-30
最后登录
2022-9-26

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
第一次发帖求助,不知道有没有人理我,求各位大佬相助

目前有几列数据,希望程序在每次遇到不同的number或者type下,重新从1开始生成序列号

原数据格式如下:
input kit number type;
cards;
123455 01 aspirin
111112 01 aspirin
134413 01 placebo
145234 01 placebo
123456 01 panadol
145655 02 placebo
114567 03 aspirin
114246 03 aspirin138769 03 placebo
希望得到的结果为原数据加上由序列号生成的count一列:

kit number type count;
123455 01 aspirin  1
111112 01 aspirin  2
134413 01 placebo 1
145234 01 placebo 2
123456 01 panadol 1
145655 02 placebo 1
114567 03 aspirin 1
114246 03 aspirin 2
138769 03 placebo 1


自己试了好几种写法,想的是通过notesorted然后再left join,但是还是没办法实现,不知道这个应该是不是一定要通过宏来实现,
希望大佬帮忙救命了





二维码

扫码加我 拉你入群

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

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

关键词:变量生成 序列号 left join Aspirin Number

回帖推荐

沙发
橙红的果士 学生认证  发表于 2022-8-31 13:28:10 |只看作者 |坛友微信交流群
  1. data have;
  2.         input kit $ number $ type $;
  3. cards;
  4. 123455 01 aspirin
  5. 111112 01 aspirin
  6. 134413 01 placebo
  7. 145234 01 placebo
  8. 123456 01 panadol
  9. 145655 02 placebo
  10. 114567 03 aspirin
  11. 114246 03 aspirin
  12. 138769 03 placebo
  13. ;
  14. run;

  15. data want1;
  16.         set have;
  17.         by number type notsorted;
  18.         if first.type then count=1; else count+1;
  19. run;
复制代码

使用道具

橙红的果士 发表于 2022-8-31 13:28
谢谢大佬救命 脑子卡住了 越想越复杂

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

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

GMT+8, 2024-4-27 09:49