如何在SAS中创建一个具有可变数量的零的数字作为第一个

时间:2016-09-23 10:38:53

标签: sas

我必须在SAS00000056471两个数据集,其中一个关键变量是lentgh为10的数字(例如)。如果数字小于10,我有一个可变数量的零。例如56471。 而在其他数据集中,数字只是merge。我想在第二个数据集中创建另一个变量,该变量添加变量数为零,并将其用作SELECT * FROM TableName Order BY ABS(Amount) 的关键变量。

我该如何解决?

提前感谢

1 个答案:

答案 0 :(得分:0)

您可以使用三种方法:

data have;
input ID $10. ;
cards;
143134
12
14356677
12f
oh dear
;run;

data want;
  set have;
  /* if numeric then convert to number and back using z10 format */
  newID=put(input(ID,8.),$z10.);
  /* if alphanumeric, right align then replace spaces (will replace ALL spaces) */
  newID2=translate(right(ID),'0',' '); 
  /* probably the best method */
  newID3=repeat('0',10-length(ID)-1)||ID;
run;

有关Zw.d格式的文档here