I'm trying to test a Monte Carlo simulation. Is there a way to randomly sample a number between +1 and -1 in SAS ?
Second example in this blog post - almost a decade old but still works 🙂
https://blogs.sas.com/content/iml/2011/08/24/how-to-generate-random-numbers-in-sas.html
The example below generates 10 values (do i=1 to 10) of random values, U between 0 and 1.
The variable X, are uniform values between -1 and 1.
@gkmzinsou wrote:
I'm trying to test a Monte Carlo simulation. Is there a way to randomly sample a number between +1 and -1 in SAS ?
data A;
call streaminit(123); /* set random number seed */
a = -1; b = 1; /* example values of limits */
do i = 1 to 10;
u = rand("Uniform"); /* u ~ U(0,1) */
x = a + (b-a)*u; /* u ~ U(-1, 1)*/
output;
end;
run;
EDIT: "Newer" method via @yabwon
data want;
call streaminit(123);
do i=1 to 10;
randVar = rand('uniform', -1, 1);
output;
end;
run;
Read this:
Bart
Second example in this blog post - almost a decade old but still works 🙂
https://blogs.sas.com/content/iml/2011/08/24/how-to-generate-random-numbers-in-sas.html
The example below generates 10 values (do i=1 to 10) of random values, U between 0 and 1.
The variable X, are uniform values between -1 and 1.
@gkmzinsou wrote:
I'm trying to test a Monte Carlo simulation. Is there a way to randomly sample a number between +1 and -1 in SAS ?
data A;
call streaminit(123); /* set random number seed */
a = -1; b = 1; /* example values of limits */
do i = 1 to 10;
u = rand("Uniform"); /* u ~ U(0,1) */
x = a + (b-a)*u; /* u ~ U(-1, 1)*/
output;
end;
run;
EDIT: "Newer" method via @yabwon
data want;
call streaminit(123);
do i=1 to 10;
randVar = rand('uniform', -1, 1);
output;
end;
run;
Continuous or integer?
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.