2011-12-30 5 views
1

큰 문제가 있습니다. SAS에서 결과를 Excel 출력으로 저장하는 보고서를 실행 중입니다. 문제는 값이 0 일 때마다 sas가 마침표 (.)로 열을 채 웁니다.SAS는 Excel에서 기간 0으로 값을 내 보냅니다.

이 문제를 방지 할 수있는 방법이 있습니까? SAS가 0 값을 채우도록합니다.

감사합니다.

답변

4

코드가 없으면 문제를 파악하기가 어렵습니다. 당신은 PROC 보고서 또는 PROC 인쇄 시도를 사용하는 경우 :

Options Missing=0; 
+2

그리고 셀 공란을 남기고 싶다면'option missing = '';'을 사용하십시오. 내보내기를 수행 한 후에는 다시 마침표로 되돌리려면'option missing = '.'; '을 사용하십시오. –

+0

감사합니다. – Adam

1

실제로 데이터 세트를 변경하고자하는 경우, 아래의 사용 http://support.sas.com/kb/24/693.html

/* Example 1 - Convert all numeric missing values to zero.   */ 
/*                 */ 
/* Use the ARRAY statement with the automatic _NUMERIC_ variable to */ 
/* process all the numeric variables from the input data set. Use */ 
/* the DIM function to set the upper bound of an iterative DO to the */ 
/* number of elements in the array.         */ 
/*                 */ 
/* NOTE: The MISSING function can be used as well to test for  */ 
/*  character or numeric missing values. If you have   */ 
/*  mixed data types and want to use arrays, you'll need one */ 
/*  array for the character variables, and another array for */ 
/*  numeric variables.           */ 
data nomiss(drop=i);              
set ***YOUR DATA SET HERE***;                
array testmiss(*) _numeric_;            
do i = 1 to dim(testmiss);            
if testmiss(i)=. then testmiss(i)=0;          
end; 
run; 
에서 SAS 설명서를 읽어

CarolinaJay의 대답은 어떤 값도 변경하지 않기 때문에 문제가 내보내기에만있는 경우 더 낫습니다.

1

proc stdize를 사용할 수 있습니다.

Proc stdize data=base_data out=output_data reponly missing=0;run; 
관련 문제