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?
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.