BookmarkSubscribeRSS Feed
otis
Calcite | Level 5


I need to create a random sample of 100K from a billion record dataset. I searched online and learned that I can use raununi (x). But when I ran it in SAS Enterprise guide 5.1, it returned an error message "

 

CLI describe error: [IBM][CLI Driver][DB2/AIX64] SQL0440N No authorized routine named "RANUNI" of type "FUNCTION" having

compatible arguments was found. SQLSTATE=42884

"

My codes are like:

"

proc sql;

create table aa as

   select *

from bb

where ranuni(5567) between 0.5 and 0.51

"

Any advice on how to create a random sample using SQL efficiently?

Thanks!

2 REPLIES 2
Steelers_In_DC
Barite | Level 11

If you have the right license for it I would use this:

proc surveyselect data=Customers

  method=srs n=15

  seed=1953 out=SampleStrata;

  strata State Type;

run;

If you must use sql all the info you need should be here:

http://www2.sas.com/proceedings/sugi31/168-31.pdf

RW9
Diamond | Level 26 RW9
Diamond | Level 26

Randuni is a call function, therefore I don't think its available in proc SQL.  You can although use the rand() function:

SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1309 views
  • 0 likes
  • 3 in conversation