外部ファイルを読み込む

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ステートメント - SAS® Help Center 
 
 
 サンプル 
 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ステートメント
データセットとして読み込む外部ファイルの情報を指定する。
 
 
 infileステートメント - SAS® Help Center 
 
 
 
 
 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;