楼主: happyqj
1244 2

SAS 数据垂直拓展疑问 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

3%

还不是VIP/贵宾

-

威望
0
论坛币
2045 个
通用积分
5.1160
学术水平
1 点
热心指数
4 点
信用等级
0 点
经验
21953 点
帖子
64
精华
0
在线时间
161 小时
注册时间
2014-3-16
最后登录
2025-8-21

楼主
happyqj 学生认证  发表于 2016-12-5 23:45:36 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
比如原始数据如下:
ID  year x
1 1990 23
1 1991 24
1 1992 20
1 1993 30
2 1989 47
2 1990 56
2 1991 78
...

拓展后的数据希望是下面的结构(几个相邻的数据归为一组):
ID year x seq
1 1990 23 1
1 1991 24 1
1 1991 24 2
1 1992 20 2
1 1992 20 3
1 1993 30 3
2 1989 47 1
2 1990 56 1
2 1990 56 2
2 1991 78 2
...
不知道该如何实现


二维码

扫码加我 拉你入群

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

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

关键词:year 原始数据 如何实现 ear 不知道 拓展

沙发
dogmamongo 发表于 2016-12-7 22:39:39
data a;
   input ID year x;
datalines;
1 1990 23
1 1991 24
1 1992 20
1 1993 30
2 1989 47
2 1990 56
2 1991 78
;
run;

data a(drop=i n);
   set a;by id;
      retain n 0;
          n=n+1;
          if first.id then n=1;
   do i=1 to 2;
      seq=n;
             if i=2 then seq=n-1;
      output;
             if first.id then delete;
   end;
run;
proc sort data=a;by id year seq;
run;

藤椅
happyqj 学生认证  发表于 2016-12-12 14:40:14
dogmamongo 发表于 2016-12-7 22:39
data a;
   input ID year x;
datalines;
如果要实现3个或者4个相邻的一组,应该怎么修改程序啊?

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-27 04:23