我想在我的SAS表中将标题和性别变量表示为数字。如何在SAS中执行此操作?

时间:2018-09-11 11:20:31

标签: sas

我想将标题和性别变量表示为数字。为此,我需要添加什么代码?

DATA test;
INPUT title$ gender$ name$ age;
CARDS;
Mr Male Micheal 20
Mrs Female Stephanie 25
Mr Female Linda 30
Dr Male James 40
Dr Female Jane 45;
run;

下面是我对这个问题的尝试。但是出了点问题,因为标题和性别变量没有改变!

proc format library = Work;
value $title_ 'Mr' = 1 'Mrs' = 2 'Dr' = 3;
value $gender_ 'Male' = 1 'Female' = 2;    
run;

OPTIONS FMTSEARCH = (Work);

data test;
format $title $title_;
set test;
run;

1 个答案:

答案 0 :(得分:2)

您快到了-格式语句的语法略有错误。这是您当前的格式声明:

format $title $title_;

这是更正的。我将其扩展为也适用您的性别格式:

  format title $title_. gender $gender_.;

不必套用数据集即可应用格式,即

data mydata;
  set mydata;
  format ...;
run;

您可以通过使用proc数据集直接应用一个,而不用像上面的步骤那样编写数据步骤,例如

proc datasets lib = work;
  modify test;
  format title $title_. gender $gender_.;
  run;
quit;