SASデータセット変数のデータの種類を返します。
カテゴリ: | SASファイルI/O |
%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));
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;