CSVやテキスト等の外部ファイルを読込む場合、SASデータセットでは全ての項目を扱う必要がない場合があります。
そのようなケースで、知っておくと便利な方法を今回は紹介します。
例えば、以下のようなCSVファイルを読込みます。
「ファイル名:sample.csv」
1,A01,10,5
2,A01,10,4
3,A02,20,3
4,A02,20,2
5,A03,30,1
左から2番目の項目がSASデータセットには不要だとします。
一般的な記述としては、不要な項目も一度SAS変数(この場合は文字変数)として読込み、SASデータセットに出力する際に、DROPステートメント等で必要な変数のみを出力対象とさせます。
例)
data sample(drop=var2);
infile "d:\sample.csv" dsd ;
input var1 var2 $ var3 var4 ;
run ;
「@」をINPUTステートメントで使用すると、以下のような記述ができます。
例)
data sample ;
infile "d:\sample.csv" dsd ;
input var1 @"," var3 var4 ;
run ;
不要な項目をINPUTステートメントで指定する箇所に、「@","」と記述します。
こうすることにより、任意の位置のデータを読み飛ばして処理をさせることができます。
(タブ区切りのファイルの場合には、「@"09"x」と記述します。)
0 件のコメント:
コメントを投稿