外部ファイルを読み込む
- Excelファイルを読み込み、データセット化するマクロ
- 外部CSVファイルをproc importプロシジャで読み込み、データセット化する
- 外部CSVファイルをdataステップで読み込み、データセット化する
- 外部ファイルの読み込み(proc import)
- infileステートメント
Excelファイルを読み込み、データセット化するマクロ
-
proc importを使用する。
%macro ImportExcel(i_file_path=, i_sheet_name=, ods_output_name=);
proc import datafile=&i_file_path out=&ods_output_name. dbms = xlsx replace;
getnames = yes;
sheet = &i_sheet_name.;
run;
%mend ImportExcel;
外部CSVファイルをproc importプロシジャで読み込み、データセット化する
proc import datafile='C:\SAS_Study\test.csv' out=work.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= replace;
getnames = yes;
run;
外部CSVファイルをdataステップで読み込み、データセット化する
filename sample "C:\SAS_Study\test2.csv";
data work.test;
infile sample dim="," firstobs=2;
input id:$8. name:$32. class:8.;
run;
外部ファイルの読み込み(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の場合のみ有効) |
infileステートメント
- データセットとして読み込む外部ファイルの情報を指定する。
filename test_data "C:\SAS_Study\test2.csv";
data work.test;
infile test_data dim="," firstobs=2;
input id:$8. name:$32. class:8.;
run;