全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3830 3
2015-12-13
有这样一组数据
日期 1 2 3 4 5 6 7 8 9 10 11 12 13
A  50 44 32 20 20 18 18 15 10 10
B  3 3 45 45 20 20 20 20 10 9 9 2
C  0 0 0 0 70 70 60 60 0 0 0 0
需要的处理后的结果是每组数据最大的数值对齐,结果长这样
日期 1 2 3 4 5 6 7 8 9 10 11 12 13
A  50 44 32 20 20 18 18 15 10 10
B  45 45 20 20 20 20 10 9 9 2
C  70 70 60 60 0 0 0 0

大家有什么可弄的程序吗?或者给点建议,观测会很多,每个人最大值都不在同一天,目的是让他们统一到同一天
二维码

扫码加我 拉你入群

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

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

全部回复
2015-12-14 09:49:37
data a;
        input x1 x2 x3 x4 x5 x6;
cards;
1 2 10 4 3 1 0
2 20 12 6 6 4
10 9 8 7 6 5
;
run;
data b;
        set a;
        array xx x1-x6;
        do i=1 to dim(xx);
                if xx{i}=max(of x1-x6) then max=i;
        end;
        do i=1 to dim(xx);
                 if max+i-1<=6 then  xx{i}=xx{max+i-1};
                  else xx{i}=0;
        end;
        drop max i ;                 
run;
二维码

扫码加我 拉你入群

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

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

2015-12-14 10:34:37
另外call sortn可以对你指定的N个数值型变量按值大小排序,只不过貌似这个方法只能是顺排
二维码

扫码加我 拉你入群

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

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

2015-12-15 01:59:35
call sortn
+
array a{10} date10-date1;
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群