请教各位,现有如此考题一道:
不使用proc步从变量A中选取随机一人(因此不能procsort不能procsql),原始dataset只有abcde五个人的名字列表。
估计其目的是想考核考生的array或retain用法知识。我就打算给每人一个随机值,然后选取最大或最小值的那个…… 应该也算是随机选取的吧?
但现在我做到这一步:变量A为ace,boy,cat,dog,egg五个人名,变量B是一栏随机值(使用ranuni或uniform生成的数)
data random;
set name;
random=uniform(99);
retain maxs;
maxs=max(random, maxs);
这样dataset就变成(random的值我瞎编的)
name random maxs
ace 0.7 0.7
boy 0.3 0.7
cat 0.2 0.7
dog 0.9 0.9
egg 0.8 0.9
到这一步我就走不下去了,如何才能选取为0.9的那个值呢,如果最后一行加上
if maxs=random; 的话,那第一条不是最大的也会被包括进去,请问如何进行下一步的操作呢?