# proc transposeステートメント

- データセットを転置する。
  - [proc transposeステートメント - SAS® Help Center](https://go.documentation.sas.com/doc/ja/pgmsascdc/9.4_3.5/proc/p1r2tjnp8ewe3sn1acnpnrs3xbad.htm)

#### サンプル

``` sas
proc sort data=sashelp.cars out=work.cars_sorted;
by Model;
run;

proc transpose data=work.cars_sorted out=work.cars;
by Model;
run;
```

#### オブション
`proc transpose`から`;`までの間にスペース区切りで記述する。

|オプション|指定する内容|説明|
|-|-|-|
|data=|データセット名|転置対象のデータセットを指定|
|out=|データセット名|転置後のデータセットを指定|
|prefix=|文字列|転置後の列名に付与したい接頭辞を指定|
|suffix=|文字列|転置後の列名に付与したい接尾辞を指定|

#### プロシジャ内ステートメント
`proc transpose ～;`から`run;`までの行に記述する。

|ステートメント|指定する内容|説明|
|-|-|-|
|by|列名|転置せずにそのまま残す列を指定<br>（byを使用する場合は、指定する列で事前にソートしておく必要がある）|
|var|列名|転置する列を指定|
|id|列名|列の内容を「転置後の列名」として使用する列を指定|
|idlabel|列名|転置後の変数ラベルとして使用する変数を指定|