Форматирование переменной

#sas

#sas

Вопрос:

У меня есть следующий формат:

value agecf 0 = "35-40" 1 = "41-45" 2 = "46-50" 3 = "51-55" 4 = "56-60";

Но затем я набираю следующее: format age agecf.; Я по-прежнему получаю все наблюдения (например, 35,36,37,…..) вместо наблюдений, сгруппированных по 5 уровням. Почему?

Ответ №1:

Вы просто поменяли местами левую и правую части формата. Форматированное значение отображается справа, исходное значение — слева.

Ниже приведен пример использования вашего формата, который, вероятно, является тем, что вы пытались создать.

 proc format;
value agecf 0 = "35-40" 1 = "41-45" 2 = "46-50" 3 = "51-55" 4 = "56-60";
value newage 35-40="0" 41-45="1" 46-50="2"  51-55="3" 56-60="4";
run;
data test;
input value1;
value2=value1;
format value1 agecf. value2 newage.; 
datalines;
35
45
50
37
46
55
60
;
proc print data=test;run;