如何使用sas中的ranuni()函数生成10到50之间的随机整数.
为了生成1到5之间的随机整数,我使用了这段代码
data random;
do i=1 to 10;
random_int = int(ranuni(0) * 5 + 1);
output;
end;
Run Code Online (Sandbox Code Playgroud)
跑;
使用相同的逻辑,您可以使用:
random_int = int(ranuni(0) * 41 + 10);
Run Code Online (Sandbox Code Playgroud)
ranuni从interval返回一个值<0, 1>,乘以41得到一个值<0, 41>,加10,最终值来自<10, 51>.转换为int只会截断小数部分,所以你永远不会得到51.
Generaly:
a * ranuni(seed) + b;
Run Code Online (Sandbox Code Playgroud)
从interval返回一个值<b, a + b>.