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;