在观察结果很大时为字符值创建格式

时间:2014-05-13 18:48:32

标签: sas proc

我查看了这个主题的答案,这些答案的字符值非常少,无法格式化为数值。我有超过200个字符值来格式化他们的不同ID。并且具有其字符名称的独特id存在于另一个sas数据集中。 那么有没有其他方法可以做到这一点,而不是编写代码:

value  $county ' Carroll County'= 034
                   ' Chatham County'= 011
                   ' Fulton County'= 213
                   ' DeKalb County'= 002
.
.
.
                   ' Chattahoochee County'=510;                   ;
   run;

我正在使用sas 9.3

1 个答案:

答案 0 :(得分:3)

使用Frazz推荐的方法,你会得到类似的结果:

data mapping;
    set have1;
    fmtname = '$county';
    start = county_name;
    label = county_number;
    keep fmtname start label;
run;

proc format cntlin=mapping;
run;

然后您可以使用以下内容来应用格式:

number = put(name, $county3.);

请记住,您需要“开始”,“标签”和“fmtname”变量才能生效。另外,请确保首先没有重复的county_names,以便一个县名只映射到一个标签。