En un solo paso data quiero mostraros las funciones más habituales para generar números aleatorios con SAS. Una entrada para que os copiéis el código y lo analicéis con SAS. Quiero que sirva de guía para que recordéis las funciones más empleadas; además, será muy útil para los que se estén iniciando en el uso de SAS:
data aleatorios;
drop a b raiz n p;
raiz = 20;
do i = 1 to 2000;
* DISTRIBUCIÓN UNIFORME;
uniforme = ranuni(raiz);
* ALEATORIO ENTRE 2 NUMEROS;
a = 2; b = 10;
aleatorio_entre = a + (b - a) * ranuni(raiz);
* NORMAL(0,1);
normal = rannor(raiz);
* NORMAL(a,b);
normal_a_b = b * rannor(raiz) + a;
* POISSON MEDIA a;
poisson = ranpoi(raiz, a);
* BINOMIAL TAMAÑO n Y PROBABILIDAD p;
n = 10; p = 0.5;
binomial_n_p = ranbin(raiz, n, p);
* EXPONENCIAL 1;
exponencial_1 = ranexp(raiz);
* GAMMA(a);
gamma_l = rangam(raiz, a);
* VALORES ALEATORIOS ENTRE 1 Y 5 CON PROBABILIDADES p1 p2 ...;
valores = rantbl(raiz, 0.3, 0.1, 0.2, 0.2, 0.6);
output;
end;
run;