de datos SAS establece prueba automática

LS NOCENTER opción = MAX MAX PS = OBS = MAX Macrogen; 

LIBNAME A ''; 

OPCIONES FMTSEARCH = (A); 

    
/ *附录宏* / 
% M_APPENDIX_FORMAT MACRO (N1); 
    
    % IF% de índice (y LVARNAME, y N1.)% ENTONCES% DO; 
        % DO K = 1% A y LA_LEN .;                                
            % LET AN =% SCAN (y LVARNAME, & K..); 
            % LET AC =% SCAN (& LA, & K..); 
            % IF y AN. = & N1. %ENTONCES HAZLO; 
                FORMATO y N1. $ & AC._FMT .; 
                
            %FINAL; 
        %FINAL; 
    %FINAL; 
    % ELSE% DO; 
        FORMATO y N1. $ 3 .; 
    %FINAL; 
            
%ARREGLAR;


% LET NL =% SYSFUNC (COUNT semanas (y NLIST).); / *变量个数* /
% LET LA = A1 A18 A20 A44 A58 A32 A33; / * corresponde variables Apéndice * / 
% =% SYSFUNC LA_LEN LET (COUNT semanas (y LVARNAME).); 

% M_APPENDIX_FORMAT (IDENTITEY_TYPE); 

la XLS LIBNAME la EXCEL * .xls '36 '; 

% LET datosSalida = PCR_BASEINFO; 

% la MACRO el cheque; 

	/ * 1, cheque estructura de la tabla - campo reservado:. número variable, los nombres de variables, etiquetas de variable, tipo de variable, de longitud variable * / 
	el PROC ÍNDICE los datos = A. & datosSalida OUT = temp_t1 (el torreón = VARNUM nombre la LONGITUD la escriba la etiqueta) la NOPRINT VARNUM; 
	el RUN; 
	
	el PROC el ordenar los datos = temp_t1; 
		POR VARNUM; 
	el RUN; 
	
	los DATOS XLS.CONTENTS; 
		la temp_t1 SET; 
	el RUN; 
	
	/ * 2, ver 100 registros antes de imprimir * / 
	los DATOS XLS.TOP100;
		A. & datosSalida el SET (la OBS = 100); 
	el RUN; 
	
	. / * 3, y las relaciones de cheques singularidad comprobación * / 

	el PROC A. & datosSalida el ordenar los datos = (el KEEP = REPORT_NO IDENTITEY_TYPE BUSINESS_ORG_TYPE BUSINESS_ORG BUSINESS_TYPE) OUT = NODUP DUPOUT = XLS.REPORT_NO_DUP NODUPKEY ; 
		POR REPORT_NO IDENTITEY_TYPE BUSINESS_ORG_TYPE BUSINESS_ORG BUSINESS_TYPE; 
	el RUN; 
	
	los DATOS XLS.DATE_XC; 
		el SET A. & datosSalida; 
		el MON = INTCK ( "MES", open_date, PUTOUT_DATE); 
		el SI el MON <^ el MON = 0 el y;. 
	el RUN; 
			
	. / * 4, ver distribución de frecuencias conjunto de datos * / 
	
	el PROC el SQL el NOPRINT; 
		el SELECT NOMBRE el INTO: NLIST separados por '' la dE temp_t1; / * lista de variables * / 
		el seleccionar el tipo de la INTO: la TLIST separados por '' la dE temp_t1; / * tipo de variable * / 
	el QUIT; 
	
	LET% NL =% SYSFUNC (COUNT semanas (y NLIST).); / * número de variables * /
	% LET LVARNAME = IDENTITEY_TYPE BUSINESS_ORG_TYPE BUSINESS_TYPE PAYBACK_PERSON_TYPE CLASS5_STATE PAYMENT_STAUTS moneda; / * variables de Apéndice * / 
	% LET LA = A1 A18 A20 A44 A58 A32 A33; / * corresponde variables Apéndice * / 
	% LET LA_LEN =% SYSFUNC (. COUNT semanas (y LVARNAME)) ; 

	
	/ * longitud Calcular variable de caracteres * / 
	el temp_t2 DATOS; 
		SET A. & datosSalida (DROP =); 
		% LET Nl =% SCAN (y NLIST, y el I..); 
		% LET Tl =% SCAN; (& the TLIST, y la I ..) 
		% el IF y Tl = 1%, entonces% de la DO;. / * numérico - verificación estadística * / 
			el PROC el resumen, el DATA = A. &DatosSalida N NMISS MAX MIN;
		
		% DO I = 1% A y NL .; 
			% LET N1 =% SCAN (y NLIST, & I..); 
			% LET T1 =% SCAN (y TLIST, & I..); 
			% IF y T1 = 2%, entonces% DO; 
				Y N1._len = longitud (y N1.); 
			%FINAL; 
		%FINAL; 
		
	CORRER; 
	
	
	% DO I = 1% A y NL .; 
			
				VAR y N1; 
				OUTPUT OUT = XLS. Y N1 .; 
			CORRER; 
			
 			%FINAL; 
			
		% ELSE% DO; / *字符型-检查变量值前两位和变量值长度* / 
			
			PROC FRECUENTE DATA = temp_t2; 
				TABLAS y N1. / Perdiendo = XLS. Y N1 .; 
				% M_APPENDIX_FORMAT (y N1.); 
			CORRER; 
			
			PROC FRECUENTE DATA = NOPRINT temp_t2; 
				TABLAS Y N1._len / perdiendo = XLS y N1._len.; 
			CORRER; 
			
		%FINAL; 
	%FINAL; 
	
	
%ARREGLAR; 

%CHEQUE;

  

Supongo que te gusta

Origin www.cnblogs.com/wdkshy/p/12455635.html
Recomendado
Clasificación