SAS:将数字分配给变量的内容

时间:2015-03-11 20:28:17

标签: variables sas variable-assignment

我有一个名为city的变量,变量中包含城市名称:

City
New York
Chicago
Paris
London
Boston
Hamburg
**New York
London**

我想创建另一个名为cityNumber的变量,此变量应该通过City变量并分配数字1,2,3等。

例如:

City                CityNumber
New York              1
Chicago               2
Paris                 3
London                4
Boston                5
Hamburg               6
**New York              1
London                4**

有几个城市,它们的排列并不总是一样。

谢谢

1 个答案:

答案 0 :(得分:1)

按城市排序数据,然后使用cityNumber组创建by。您需要一个if语句,在每个组的开头将cityNumber递增1。最简单的方法是使用sum语句:

data want;
  set have;
  by city;
  if first.city then cityNumber+1;
run;