DATA Step, Macro, Functions and more

Format Help

Reply
anonymous_user
Posts: 0

Format Help

If one dataset (Test1) and I have variable ‘displaymonth’ with the format DATETIME20.

 

and

 

the other dataset (Test2) variable ‘displaymonth’ $8.

 

How do I go about getting the first dataset (Test1) ‘displaymonth’ to be the same as Test2? So when I merge the 2 they match?

 

I tried this but doesn't work

Data Test1;
Set Test1;
Applseq=applseq+0;
put displaymonth=$8.;
Run

Super User
Posts: 7,782

Re: Format Help

[ Edited ]
Posted in reply to anonymous_user
data test1_int (drop=_displaymonth);
set test1 (rename=(displaymonth=_displaymonth));
displaymonth = put(datepart(_displaymonth),yymmddn8.);
run;

Then use that in your join instead of test1.

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Super User
Super User
Posts: 7,954

Re: Format Help

Posted in reply to anonymous_user

Alternatively:

proc sql;
  create table WANT as
  select...
  from   TEST1 A
  full join TEST2 B 
  on      A.DISPLAYMONTH=input(B.DISPLAYMONTH,yymmdd8.);
quit;
Ask a Question
Discussion stats
  • 2 replies
  • 211 views
  • 0 likes
  • 3 in conversation