🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Obsidian | Level 7

## Proc Transpose

Hi Community:
After running a Proc Corr, I have got a correlation table as below:

 Have Company1 Company2 Company3 Company4 Company1 1 0.562365 -0.06496 0.889913 Company2 0.562365 1 0.49224 0.737267 Company3 -0.06496 0.49224 1 0.274877 Company4 0.889913 0.737267 0.274877 1

As there are 1000s of companies, I would like to make it as below:

 Want Company1 Company2 0.562365 Company1 Company3 -0.06496 Company1 Company4 0.889913 Company2 Company3 0.49224 Company2 Company4 0.737267 Company3 Company4 0.274877

Here is the actual screenshot:

Jijil Ramakrishnan

1 ACCEPTED SOLUTION

Accepted Solutions
Diamond | Level 26

## Re: Proc Transpose

Example:

``````proc corr data=sashelp.cars outp=have noprint;
var _numeric_;
run;
data want;
set have(where=(_type_='CORR'));
array x _numeric_;
length vname \$ 32;
do i=1 to dim(x);
vname=vname(x(i));
if _name_^=vname then do;
corr=x(i);
output;
end;
end;
keep _name_ vname corr;
run;
``````
--
Paige Miller
2 REPLIES 2
Diamond | Level 26

## Re: Proc Transpose

Example:

``````proc corr data=sashelp.cars outp=have noprint;
var _numeric_;
run;
data want;
set have(where=(_type_='CORR'));
array x _numeric_;
length vname \$ 32;
do i=1 to dim(x);
vname=vname(x(i));
if _name_^=vname then do;
corr=x(i);
output;
end;
end;
keep _name_ vname corr;
run;
``````
--
Paige Miller
Obsidian | Level 7

## Re: Proc Transpose

Thank you very much!
Discussion stats
• 2 replies
• 484 views
• 0 likes
• 2 in conversation