请教大虾一个问题,怎样在一个1*14的sas数据集中,如列名为u1-u14,把其中的某一个赋值给d,做一个循环?以下是我的程序,大虾帮忙看看哪有问题?
data a;
set b;
MaxUr=-1;
j=0;
do i=1 to 14 ;
d=u(i);
if d>maxur then maxur=d;
j=i;
data a;
input u1-u14;
cards;
1 2 3 4 5 6 7 8 9 10 11 12 14 13
;
run;
data b;
retain maxur -1 d 0;
set a;
array u u1-u14;
do over u;
d=u;
if d>maxur then maxur=d;
end;
run;
大虾,换成下面的程序就找不到最大值的位置在哪了。这个程序找到的d=13,正确的应该是10吧。阁下再仔细看一下哪有问题?
data a;
input u1-u14;
cards;
1 2 3 4 5 6 7 8 9 20 11 12 14 13
;
run;
data b;
retain maxur -1 d 0;
set a;
array u u1-u14;
do over u;
d=u;
if d>maxur then maxur=d;
end;
run;