2013-10-19 81 views
0

這裏的頻率是我擁有的數據:如何計算變量值在SAS

ID VALUE 
1 1 
2 -1 
3 1 
4 1 
5 1 
1 1 
2 1 
3 -1 
4 1 
5 -1 
... 

我怎樣才能得到一個表是這樣的:

ID value=1 value=-1 
1 2   0 
2 1   1 
3 1   1 
4 2   0 
5 1   1 

value=1意味着1多少時間出現在每個ID的值列

回答

1
data work.indata ; 
input ID VALUE; 
cards; 
1 1 
2 -1 
3 1 
4 1 
5 1 
1 1 
2 1 
3 -1 
4 1 
5 -1 
; 
run; 

/*  
proc sort data=work.indata; 
by ID; 
run; 
*/ 

proc freq noprint data=work.indata; 
tables ID * VALUE /out=WORK.COUNTS nopercent ; 
run; 


proc transpose data=WORK.COUNTS out=work.output (drop=_name_ _label_); 
id value; 
by id; 
var count; 
run; 
+0

您不需要該處理。 – mvherweg