BookmarkSubscribeRSS Feed
Hagay
SAS Employee

למספרים אקראיים תפקיד חשוב במדעי המחשב באופן כללי ותפקיד חשוב אף יותר בתוכנה סטטיסטית כמו SAS. הבעיה העיקרית עם מספרים אקראיים היא שקשה מאוד לייצר מספרים שהם באמת אקראיים, במיוחד שצריכים מספר גדול מאוד מהם.

 

במהלך השנים פותחו ועדיין מפותחים אלגוריתמים ליצירת זרם (stream) של מספרים אקראיים כך שהמספרים יהיו אקראיים כמה שיותר. גם SAS מכילה היסטוריה של פונקציות ליצירת מספרים אקראיים כאשר לפונקציות הישנות יותר התווספו פונקציות חדשות עם ביצועים משופרים.

הפונקציות הקלאסיות ב – SAS ליצירת מספרים אקראיים ממשפחת RAND כמו למשל RANUNI ליצירת מספרים אקראיים מהתפלגות אחידה, RANNOR ליצירת מספרים אקראיים מהתפלגות נורמלית וכך הלאה.

 

נכון להיום ההמלצה היא לא לעשות שימוש בפונקציות הללו אלא בפונקציה החדשה והמשופרת RAND אשר מבוססת על אלגוריתמים מעודכנים יותר.

 

כדי לאתחל את זרם המשתנים האקראיים שלנו עם גרעין (seed) ספציפי או אם אנחנו מרגישים מאוד אקראיים ורוצים לעשות שימוש דווקא במחולל מספרים אקראיים מסוים ניתן לקרוא לפונקציה CALL STREAMINIT עם הערכים המתאימים. לאחר מכן, כל קריאה ל – RAND עם הפרמטרים המתאימים תייצר לנו מספרים אקראיים כאוות נפשנו:

data RANDOMS;
	call streaminit(22);
	do i=1 to 1000;
		Uni=rand('UNIFORM');
		Normal=rand('NORMAL');
		Weibull=rand('WEIB', 1, 2);
		output;
	end;
run;

חגי

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Discussion stats
  • 0 replies
  • 312 views
  • 0 likes
  • 1 in conversation