在 SAS EG 5.1 中分组和转置数据

Grouping and Transposing data in SAS EG 5.1

我在 SAS EG (Proc SQL) 工作,我的数据集如下所示:

PC | Year | Frequency 
A  |  18  | 1
A  |  19  | 2 
A  |  20  | 3 
B  |  18  | 4 
B  |  20  | 5 
C  |  17  | 6
...

我希望它看起来像这样:

PC | 17 | 18 | 19 | 20  
A  |    | 1  | 2  | 3 
B  |    | 4  |    | 5
C  | 6  |    |    | 
...

随着年份值成为显示频率的列。我玩过 GROUP BY,但它似乎没有满足我的需要。非常感谢任何帮助

data test;
   infile cards firstobs=2 dlm='|';
   input pc:. year freq;
   cards;
PC | Year | Frequency 
A  |  18  | 1
A  |  19  | 2 
A  |  20  | 3 
B  |  18  | 4 
B  |  20  | 5 
C  |  17  | 6
;;;;
proc print;
   run;
proc summary data=test nway completetypes;
   class pc year;
   freq freq;
   output out=test2(drop=_type_);
   run;
proc print;
   run;
proc transpose data=test2 out=test3 prefix=Year;
   by pc;
   id year;
   var _freq_;
   run;
proc print;
   run;