count=J(m,1,0);
do i = 1 to 10**7;
do j = 1 to m;
if k[j]=i then count[i]=count[i]+1;
end;
end;
print count;作者: shiyiming 时间: 2011-3-22 06:06 标题: Re: 紧急 简单的SAS 编程求助 我对iml也不熟。我也不很理解你的所问。但我想,如果你的code逻辑成立,除非m =10^7。我猜你的问题可能是这样:
[code:8fz5jbdn]proc iml;
**create values;
k =shape(0, 10, 1); do i =1 to 10;k[i] =ceil(ranuni(1)*10);end; print k;
**choose the unique values;
u =unique(k); uCol =ncol(u);
**create a corresponding count matrix;
count =J(uCol, 1, 0);
**fill out the count matrix;
do i =1 to uCol;
xx =u[i]; do j =1 to nrow(k); if k[j] =xx then count[i] =count[i] +1; end;
end;
f =t(u)||count; print k f;
quit;[/code:8fz5jbdn]
京剧