procステップ
proc sortステートメント
- データセットのソートを行う。
サンプル
proc sort data=sashelp.cars out=work.cars_sorted;
by Model;
run;
オブション
proc sortから;までの間にスペース区切りで記述する。
| オプション | 指定する内容 | 説明 |
|---|---|---|
| data= | データセット名 | ソート対象のデータセットを指定 |
| out= | データセット名 | ソートした内容を格納するデータセットを指定(指定しない場合は上書きされる) |
| nodupkey | - | 重複の削除を行う場合は指定 (キー変数について、重複するデータがあった場合は重複している2件目以降の行を削除する) |
プロシジャ内ステートメント
proc sort ~;からrun;までの行に記述する。
| ステートメント | 指定する内容 | 説明 |
|---|---|---|
| by | 列名 | ソートのキーとする列を指定 (列名の直前に descendingを付与することで、降順でソートできる) |
proc transposeステートメント
- データセットを転置する。
サンプル
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 | 列名 | 転置せずにそのまま残す列を指定 (byを使用する場合は、指定する列で事前にソートしておく必要がある) |
| var | 列名 | 転置する列を指定 |
| id | 列名 | 列の内容を「転置後の列名」として使用する列を指定 |
| idlabel | 列名 | 転置後の変数ラベルとして使用する変数を指定 |
proc importステートメント
- 外部ファイルを読み込む。
サンプル
proc import datafile='C:\SAS_Study\test.csv' out=work.test dbms=csv replace;
getnames = yes;
datarow = 2;
run;
filename input_data = 'C:\SAS_Study\input_data.txt'
proc import datafile=input_data out=work.test dbms=tab replace;
getnames = yes;
run;
オブション
proc importから;までの間にスペース区切りで記述する。
| オプション | 指定する内容 | 説明 |
|---|---|---|
| datafile= | ファイルパス or ファイル参照名 |
「入力ファイルのフルパス」または「filenameステートメントで定義したファイル参照名」を指定 |
| out= | データセット名 | 転置後のデータセットを指定 |
| dbms= | データソース名 | 外部ファイルのデータの種類を指定 xlsx / csv / tab / dlm(delimiterステートメントと併用) |
| replace | - | 出力データセットを上書きする場合は指定 |
プロシジャ内ステートメント
proc import ~;からrun;までの行に記述する。
| ステートメント | 指定する内容 | 説明 |
|---|---|---|
| getnames= | yes / no | 列名情報をファイルから取得するかどうかを指定 |
| sheet= | Excelシート名 | 読み込むシート名を指定(dbms=xlsxの場合のみ有効) |
proc exportステートメント
- データセットを外部ファイルへ出力する。
サンプル
proc export data=sashelp.class outfile='C:\SAS_Study\class.csv' dbms=csv replace;
run;
proc export data=sashelp.class outfile='C:\SAS_Study\class.xlsx' dbms=xlsx replace;
sheet = class;
run;
オブション
proc exportから;までの間にスペース区切りで記述する。
| オプション | 指定する内容 | 説明 |
|---|---|---|
| data= | データセット名 | 出力対象のデータセットを指定 |
| outfile= | ファイルパス or ファイル参照名 |
「出力先ファイルのフルパス」または「filenameステートメントで定義したファイル参照名」を指定 |
| dbms= | データソース名 | 外部ファイルのデータの種類を指定 xlsx / csv / tab / dlm(delimiterステートメントと併用) |
| replace | - | 出力データセットを上書きする場合は指定 |
プロシジャ内ステートメント
proc export ~;からrun;までの行に記述する。
| ステートメント | 指定する内容 | 説明 |
|---|---|---|
| putnames= | yes / no | 列名情報をファイルに書き出すかどうかを指定(デフォルトはyes) |
| sheet= | Excelシート名 | 読み込むシート名を指定(dbms=xlsxの場合のみ有効) |
proc univariateステートメント
- 各種統計量を算出し、レポートを出力する。
proc univariate data=sashelp.class normal plot;
var height;
output out=work.result n=n mean=mean std=std median=median;
run;