0
我试图在SAS上创建一个新变量。有一个名为“Statefip”的专栏和一个名为“countyfip”的专栏。我需要一个四位数的ID号码来组合这两列。使用SAS上两个不同变量的数字创建ID变量
例如:
我如何告诉SAS遵循这一格式创建这个新的变量时?
我试图在SAS上创建一个新变量。有一个名为“Statefip”的专栏和一个名为“countyfip”的专栏。我需要一个四位数的ID号码来组合这两列。使用SAS上两个不同变量的数字创建ID变量
例如:
我如何告诉SAS遵循这一格式创建这个新的变量时?
使用put
和input
声明很容易做到这一点。 z3
格式在输出中包含前导0
。 ||
连接了put
语句,然后input
将id
字段转换回数字。
data have;
input statefip countyfip;
datalines;
1 1
8 109
12 57
13 313
;
run;
data want;
set have;
id = input(put(statefip,2.) || put(countyfip,z3.),8.);
run;
proc print;
输出:
Obs statefip countyfip id
1 1 1 1001
2 8 109 8109
3 12 57 12057
4 13 313 13313
这是如此的帮助!非常感谢!对于从CVS文件导入的大量数据集,这种代码的工作方式是否相同 –
是的,只要'statefip'和'countyfip'作为数字变量导入,它就会以同样的方式工作。祝你好运! –
另外,如果你不介意我问,2. in(statefip,2。)是什么意思?和8. in(countyfip,z3。),8。); ? –