我有一个重大问题。我在SAS中运行一个报告,将结果保存在Excel输出中。问题是每当值为0时,sas将列填充为句点(。)
有什么方法可以阻止这种情况吗?我希望SAS不填充值0。
感谢。
答案 0 :(得分:4)
没有您的代码,很难确定问题。如果您正在使用Proc Report或Proc Print,请尝试:
Options Missing=0;
答案 1 :(得分:1)
如果您想实际更改数据集,请使用以下内容并阅读http://support.sas.com/kb/24/693.html上的SAS文档
/* 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;
如果问题只出现在导出中,那么CarolinaJay的答案会更好,因为它不会改变任何值。
答案 2 :(得分:1)
您可以使用proc stdize。
Proc stdize data=base_data out=output_data reponly missing=0;run;