BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
zimcom
Pyrite | Level 9

Greeting!

 

I want concatenate a SAS date variable trtsdt (eg., "2018-04-27") with text string doseduration "10 minutes" into a new text variable "27-Apr-2018 10 minutes", but when I use

TD = catx(' ', trtsdt, doseduration);

what I got is "21301 10 minutes"

 

How can I got the date portion appear as date like "27-Apr-2018 10 minutes"

 

Thank you so much!

1 ACCEPTED SOLUTION

Accepted Solutions
novinosrin
Tourmaline | Level 20

Please try-

TD = catx(' ', put(trtsdt,date11.), doseduration);

View solution in original post

4 REPLIES 4
novinosrin
Tourmaline | Level 20

Please try-

TD = catx(' ', put(trtsdt,date11.), doseduration);
zimcom
Pyrite | Level 9
Thank you so much, and have a great weekend!!
ballardw
Super User

Try:

 

D = catx(' ', put(trtsdt, date11.), doseduration);

 

you need to explicitly apply a format with Put to create a text value. Otherwise the CATX and similar functions will use a Best. format yielding integers for dates.

zimcom
Pyrite | Level 9
Thank you for the explaination!

SAS Innovate 2025: Register Today!

 

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 825 views
  • 2 likes
  • 3 in conversation