how to read observations from a dataset 3 times,how many ways(without point)
have dataset:
ranks
1
2
want dataset:
ranks
1
2
1
2
1
2
set have have have;
set have have have;
And check some functions about it like fetchobs( ) .
Can I check why? It seems in your example you want a dataset with a 1, 2 combination 3 times. There are better ways than creating one dataset and then appending that three times, do loops for instance, retain statement setting the value != previous etc.
sorry.
could u pls provide me the logic
One more way
proc sql;
select * from have
union all
select * from have
union all
select * from have;
quit;
If you don't want to waste space, create a view:
data want / view=want;
set have have have;
run;
PG
How silly are we allowed to get? Why write something simple when you can confuse everybody with a macro?
%macro silly;
%local N i j;
data _null_;
set have nobs=_total_obs_;
call symputx ('N', _total_obs_);
run;
data want;
%do i=1 %to 3;
%do j=1 %to &N;
set have (firstobs=&j obs=&j);
output;
%end;
%end;
run;
%mend silly;
%silly
First rule of obfuscation club is...
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.