楼主: Siuhan1
1920 1

[问答] sas中怎样按日期的时间序列生成顺序号 [推广有奖]

  • 0关注
  • 0粉丝

大专生

5%

还不是VIP/贵宾

-

威望
0
论坛币
1228 个
通用积分
0.4500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
299 点
帖子
7
精华
0
在线时间
70 小时
注册时间
2018-3-7
最后登录
2023-9-11

楼主
Siuhan1 发表于 2021-9-5 17:07:21 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
求问各位大佬,应该如何在sas中按日期的时间序列生成顺序号?
id是股票的代码,日期是月度日期,
如:
id      日期
1       201001
1       201002
........
1       202108
2       201201
2       201202
.....
2       202101
........

要实现的排序:
id      日期          排序
1       201001      1
1       201002      2
........
1       202108      140
2       201201      25
2       201202      26
.....
2       202101       133
........


如果不是每个id都有那么多日期该如何按日期大小排序,就是每个id不一定有相同的数据量,第一个和最后一个日期不一定相同,但又想给每个id的日期进行排序,比如第一个id包含的日期有201001、201002...202108这些,第二个id包含的日期有201201、201202...202101这些,想实现排序(括号中的数据为顺序号):第一个id:201001(1)、201002(2)...202108(140);第二个id:201201(25)、201202(26)...202101(133)。请问这种情况该如何实现呀?

二维码

扫码加我 拉你入群

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

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

关键词:时间序列 相同的数据 如何实现 最后一个

沙发
jg.sas 发表于 2021-9-15 10:36:21
  1. proc sort data=???;
  2.         by id '日期'n ;
  3. run;

  4. data ????;
  5.         set ???;
  6.         retain seq;
  7.         if first.id then seq=1;
  8.         else id=id+1;
  9. run;
复制代码

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 13:05