Hi all,
I have a table that contains customer_id (around 1 Millions) and would like to create some random dates for these customers between 01/01/2015 and 01/01/2017 .
Please your help would be much appreciated as it is quite urgent.
Thank You very much
%let start=01/01/2015;
%let end=01/01/2017;
data _null_;
start = input("&start",ddmmyy10.);
end = input("&end",ddmmyy10.);
interval = end - start;
call symput('start',put(start,best.));
call symput('interval',put(interval,best.));
run;
data want;
set have;
format newdate ddmmyy10.;
newdate = &start + rand() * &interval;
run;
Post test data in the for of a datastep!! Also post what you want out.
Here is an example, the diff between the two dates * by random number added to the base date, gives a date between the two values:
data tmp; call streaminit(123); a="01JAN2015"d; b="01JAN2017"d; test="01JAN2015"d + floor((b-a) * rand("uniform")); format a b test date9.; run;
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.