Solved
Contributor
Posts: 28

# Transposing a dataset

Good Morning,

I have a SAS dataset that contains the following columns:

EmployeeID

Month1_Date

Month2_Date

Month3_Date

Month1_Target

Month2_Target

Month3_Target

I would like it so a new dataset would just show EmployeeID Date Target so for each row in the original dataset, there will be 3 rows in the resultant dataset.

For Example:

Original Dataset

EmployeeID     Month1_Date     Month2_Date     Month3_Date     Month1_Target     Month2_Target     Month3_Target

123                    1SEP2014          1OCT2014          1NOV2014          0.75                    0.85                         0.90

Desired Dataset

EmployeeID     Month          Target

123                 1SEP2014     0.75

123                 1OCT2014     0.85

123                 1NOV2014     0.90

Kind Regards,

Accepted Solutions
Solution
‎10-06-2014 06:29 AM
Posts: 1,147

## Re: Transposing a dataset

data want;

set have;

array dat(3) Month1_Date Month2_Date Month3_Date;

array tar(3) Month1_Target Month2_Target  Month3_Target;

do i = 1 to 3;

Month = dat(i);

target= tar(i);

output;

end;

format month date9.;

keep EmployeeID month target;

run;

Thanks,

Jag

Thanks,
Jag

All Replies
Solution
‎10-06-2014 06:29 AM
Posts: 1,147

## Re: Transposing a dataset

data want;

set have;

array dat(3) Month1_Date Month2_Date Month3_Date;

array tar(3) Month1_Target Month2_Target  Month3_Target;

do i = 1 to 3;

Month = dat(i);

target= tar(i);

output;

end;

format month date9.;

keep EmployeeID month target;

run;

Thanks,

Jag

Thanks,
Jag
Contributor
Posts: 28

## Re: Transposing a dataset

Perfect, Thanks

🔒 This topic is solved and locked.

Discussion stats
• 2 replies
• 208 views
• 1 like
• 2 in conversation