BookmarkSubscribeRSS Feed
maroulator
Obsidian | Level 7

I have a data set that currently looks like the following:

LoanID  Mod_Date   Payoff_Date

422593  12/01/2005  07/23/2014

422593  04/09/2007   .

245234  07/09/2004  03/30/2008

245234  09/08/2006    .

353255  08/03/2006  09/23/2012

353255  03/04/2008    .

353255  05/21/2009    .

...and I would like to make it look like the one below:

LoanID  Mod_Date1  Mod_Date2  Mod_Date3  Payoff_Date

422593  12/01/2005   04/09/2007                        07/23/2014

245234  07/09/2004   09/08/2006                        03/30/2008

353255  08/03/2006   03/04/2008  05/21/2009    09/23/2012

Any ideas? Thanks in advance.

1 REPLY 1
Ksharp
Super User

Code: Program

data have;
input (LoanID  Mod_Date   Payoff_Date) (: $20.);
cards;
422593 12/01/2005 07/23/2014
422593 04/09/2007 .
245234 07/09/2004 03/30/2008
245234 09/08/2006 .
353255 08/03/2006 09/23/2012
353255 03/04/2008 .
353255 05/21/2009 .
;
run;

proc transpose data=have out=want(drop=_name_) prefix=Mod_Date  ;
by LoanID notsorted ;
var Mod_Date   ;
copy Payoff_Date;
run;

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

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
  • 1 reply
  • 1294 views
  • 0 likes
  • 2 in conversation