SAS无法加载Proc格式

时间:2015-12-22 00:16:46

标签: types format sas proc proc-format

我试图创建一个读取邮政编码的proc格式并相应地将标签应用到其状态。

出于某种原因,尽管我的开始和结束字段都是数字,但它仍然会返回错误,说明:

"未找到或无法加载ZONENEW格式。"

我唯一能解决的问题是将我的Pcode数据更改为Text,将我的Start和End格式字段更改为Text。

这是我现有的代码,仍然是数字格式。

data Fmt_All_zones;
   set all_zones end=eof;
   retain type 'c';
   fmtname = 'zonenew';
   start = pcode_fr;
   end = pcode_to;
   label = key;
   output;    

   if eof then do;
      start = 'other';
      end = 'other';
      label = "Error";
      output;
   end;
run;

proc format cntlin = fmt_all_zones library = work;
run;        

data TestPostcodes;
   input Pcode;
   datalines;
   2050
   2065
   3000
   2879
   9999
   1999
   6488
   ;
run;

data FilteredPcode;
    set TestPostcodes;    
    Pcode_Label = put(Pcode, zonenew.);    
run;

我希望得到一个解释,以帮助我理解这个过程!感谢。

1 个答案:

答案 0 :(得分:1)

您通过设置TYPE='C'来定义字符格式。如果您想要数字格式,请使用TYPE='N'