2016-12-05 6 views
0

は、私は5列を持っているし、どこでもまったく同じ値を持つ正確なここで列を比較

num1 num2 num3 num4 num5 
1  2 2 3 1 
2  3 3 2 2 
2  2 2 2 2 
4  5 6 7 4 

コラム1(NUM1)と最後(num5)の値どの列が持ってチェックしたい値。どうすれば見つけることができますか?

答えて

1

転置して、代わりに重複する行を探すことができます。

data have ; 
input num1-num5 ; 
cards; 
1 2 2 3 1 
2 3 3 2 2 
2 2 2 2 2 
4 5 6 7 4 
; 
data _null_; 
call symputx('nobs',nobs); 
stop; 
set have nobs=nobs; 
run; 
proc transpose data=have out=tran; var num1-num5; run; 
proc sort data=tran; by col1-col&nobs; run; 
data want; 
set tran ; 
by col1-col&nobs; 
if not (first.col&nobs and last.col&nobs) ; 
run; 
proc print data=want; 
run; 

結果

Obs _NAME_ COL1 COL2 COL3 COL4 
1  num1  1  2  2  4 
2  num5  1  2  2  4