SAS-冷凝多排,保持最高价值

时间:2016-06-19 20:13:58

标签: sas multiple-columns

我正在尝试完成以下操作。我尝试过使用数组和排序,但似乎没有任何工作。任何帮助都会受到赞赏。

Acct     Score1   Score2
9999       45       78
9999       58       65
8888       43       80
8888       43       90
8888       31       70

This is what I would like to end up with
Acct     Score1     Score2
9999       58         78
8888       43         90

所以基本上,保持每个帐户的最高分。

2 个答案:

答案 0 :(得分:1)

只需使用PROC MEANS

proc means data=have nway ;
  class acct ;
  var score1 score2 ;
  output out=want max= ;
run;

答案 1 :(得分:0)

我建议使用PROC SQL:

PROC SQL;
    CREATE TABLE want AS 
        SELECT Acct, 
            MAX(Score1) AS Score1, 
            MAX(Score2) AS Score2
        FROM have
            GROUP BY Acct;
QUIT;