前のページ|次のページ

VARTYPE関数

SASデータセット変数のデータの種類を返します。

カテゴリ: SASファイルI/O

構文

必須引数

data-set-id

OPEN関数が返すデータセット識別子を指定します。

variable-number

SASデータセット内の変数の位置番号を指定します。

ヒント この番号は、CONTENTSプロシジャによって生成されるリスト内で変数の横に示されます。
VARNUM関数はこの番号を返します。

詳細

VARTYPEは、文字変数にはC、数値変数にはNを返します。

例1: VARTYPEを使用した数値変数の判別

この例では、SASデータセットMYDATA内のすべての数値変数の名前をマクロ変数に挿入します。
%let dsid=%sysfunc(open(mydata, i));
%let varlist=;
%do i=1 %to %sysfunc(attrn(&dsid, nvars));
  %if (%sysfunc(vartype(&dsid, &i))=N) %then
     %let varlist=&varlist %sysfunc(varname
                                 (&dsid, &i));
%end;
%let rc=%sysfunc(close(&dsid));

例2: VARTYPEを使用した文字変数の判別

この例は、SASデータセットMYDATA内に各文字変数の名前と書式化された内容を含むデータセットを作成します。
data vars;
   length name $ 8 content $ 20;
   drop dsid i num fmt rc;
   dsid=open("mydata", "i");
   num=attrn(dsid, "nvars");
   do while (fetch(dsid)=0);
      do i=1 to num;
         name=varname(dsid, i);
         fmt=varfmt(dsid, i);
         if (vartype(dsid, i)='C') then do;
            content=getvarc(dsid, i);
            if (fmt ne '' ) then
             content=left(putc(content, fmt));
            output;
            end;
      end;
   end;
   rc=close(dsid);
run;

関連項目:

関数:
前のページ|次のページ|ページの先頭へ