When I run the following code...
Data Have01;
Input MyVar $ Date Date9.;
Format Date Date9.;
Datalines;
z101 04JAN16
z102 08JAN16
z103 12JAN16
;
Run;
Data Dates01 (Keep=Date);
Format Date Date9.;
Do i=0 To 365;
Date=IntNX('day','01JAN2016'd,i);
Output;
End;
Run;
Proc SQL;
Create Table Var As Select Distinct MyVar From Have01 Order By MyVar;
Quit;
Proc SQL;
Create Table Want01 As Select * From Var, Dates;
Quit;
I get the following results...
Is there any method that the result on workspace should be only HAVE01 and all other tables should not appear? I just want end result table to be there and not other three. Something like this..
Thanks.
Use proc delete to remove datasets that are no longer needed. EG usually detects this from the log.
Ohh I got it... first I tried..
proc datasets lib=work;
delete HAVE01 DATE01 VAR;
quit;
Then I tried... and It worked.....
Proc Delete Data = work.Date01 work.Have01 work.VAR; *This will delete these datasets in work;
run;
Thanks for helping.
Well, I don't know EG that well, but I suppose after your code you could add:
proc datasets lib=work; delete dates01 var; quit; run;
However that being said, looking at your code I don't see the reasoning in all those datasets simply:
data have; input myvar $ date date9.; format date date9.; datalines; z101 04JAN16 z102 08JAN16 z103 12JAN16 ; run; data want; set have; format mydate date9.; do mydate="01JAN2016"d to "31DEC2016"d; output; end; run;
Achieves the same result? What is the point of the variable "date" in the have? Also, not a good idea to call things VAR and DATE as these are keywords, use something descriptive of your data.
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.