|
|
文字変数値の一部を抽出する方法について
[OS] ALL
[リリース] 8.2
[キーワード] SAS 8, KSCAN, SCAN
[質問]下記のようなデータ変換を行なうには、どのようにすればよいでしょうか。 元のデータの内容: 男性(20才) 男性(30才) 女性(20才) 男性(40才) 変換後のデータの内容: 男性 男性 女性 男性 [回答]いくつかの方法が考えられますが、SCAN関数を利用し、「(」の前までの文字列を抽出する方法をご紹介します。SCAN関数は区切り文字で値を区切り、N番目の語を抽出します。また、2バイト文字を使用するには、KSCAN関数を使用します。次のようなプログラムでデータの抽出が可能です。
DATA test;
INPUT dat $20.;
CARDS;
男性(20才)
男性(30才)
女性(20才)
男性(40才)
;
RUN;
DATA results;
SET test;
/* 全角'('で値を区切り、1番目の語を抽出 */
dat=KSCAN(dat,1,'(');
PUT dat=;
RUN;
|
|||||