I am attempting to create a random sample using proc sql. I found this article from the SAS website that uses the function RANUNI ( the following paper ) however when I try to run this I get an error saying RANUNI "is not a recognized build-in function name. "
Am I using it incorrectly or is there another function I can use for this?
here is my code using SAS EG to try and get a 10% sample:
proc sql;
connect to sqlsvrasfrprod(datasrc=frproduser=&uidpassword="&pawd" readbuff=3000);
create table sample as
select * from connection to frprod(
select distinct
a.startdate, a.notifydate, a.id, a.ctype, a.type, a.longdesc,
b.account,
c.ctypid
from comp.dbo.comp a
join comp.dbo.accounts b
on a.id=b.id
join comp.dbo.ban c
on left(b.account,6)=c.bannumber and ctypid between 2 and 5
where ranuni(1234) between .45 and .55;
);
quit;
Use a datastep? Extract data from the database, then run a proc surveryselect over that to get your sample:
Use a datastep? Extract data from the database, then run a proc surveryselect over that to get your sample:
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.