2 SAS传输文件格式分类2.1 按照SAS程序分类可以使用PROC CPORT过程将SAS数据集(DATA SET)创建为SAS传输文件并使用PROC CIMPORT过程还原,但使用XPORT引擎无法还原。也可以将XPORT引擎与DATA步或PROC COPY过程联用将SAS数据集创建为SAS传输文件并还原,但使用PROC CIMPORT过程无法还原。因此,使用PROC CPORT创建的SAS传输文件格式与使用XPORT引擎创建的SAS传输文件格式之间不可相互转换。
2.2 按照SAS版本分类SAS V5传输文件格式是SAS公司早期开发的传输文件格式的代表,广泛应用于生物制药行业,与SAS V6传输文件格式兼容。SAS V8传输文件格式是SAS公司近期开发的传输文件格式的代表,扩展了SAS V5传输文件格式的功能,与SAS V7/V9传输文件格式兼容。
2.3 不同分类之间的关联PROC CPORT和PROC CIMPORT过程可创建和还原SAS V8传输文件格式,同时兼容SAS V5/V6/V7/V9传输文件格式。XPORT引擎与DATA步或PROC COPY过程联用可创建和还原SASV5传输文件格式,同时仅兼容SASV6传输文件格式。
3 SAS传输文件格式特征3.1 SAS V5/V6传输文件格式特征变量名的长度最多可达到8个字符,变量名不能完全为空;变量标签的长度最多可达到40个字符;字符变量的长度最多可达200个字节。
3.2 SAS V7/V8/V9传输文件格式特征变量名的长度最多可达到32个字符,除非使用“VALIDMEMNAME=EXTEND”选项,否则变量名不能完全为空;变量标签的长度最多可达到256个字符;字符变量的长度最多可达32767个字节。
convert the XPORT file back to a SAS dataset using proc step;
libname xptfile xport "D:\DLG\2021Receiving\20210419sas的project\DEMO_I.XPT";
libname sasfile "D:\DLG\2021Receiving\20210419sas的project\";
proc copy in=xptfile out=sasfile memtype=data;
run;
proc print data=sasfile.demo_i;run;
*convert the XPORT file back to a sas dataset using data step;
libname in xport "D:\DLG\2021Receiving\20210419sas的project\DEMO_I.XPT";
data sasfile.wave1;
set in.DEMO_I;
run;
%macro drive(dir,ext,out);
%let filrf=mydir;
%let rc= %sysfunc(filename(filrf,&dir));
%let did= %sysfunc (dopen(&filrf));
%let memcnt= %sysfunc (dnum(&did));
%do i = 1 %to &memcnt;
%let name= %qscan (%qsysfunc (dread(&did,&i)),-1,.);
%if %qupcase( %qsysfunc (dread(&did,&i))) ne %qupcase (&ext) %then %do ;
%if ( %superq(ext) ne and %qupcase (&name) = %qupcase (&ext)) or
( %superq (ext) = and %superq (name) ne) %then %do;
libname old xport "&dir.\%qsysfunc(dread(&did,&i))" ;
libname new "&out" ;
proc copy in =old out=new;
run ;
%end;
%end;
%end;
%let rc= %sysfunc(dclose(&did));
%mend drive;
%drive(C:\your source folder\,xpt,C:\your destination folder\)



雷达卡





京公网安备 11010802022788号







