Sas:如何使用 z 格式向值添加前导零


您可以使用 SAS 中的Z格式选项向数值添加前导零。

以下示例展示了如何在实践中使用Z格式选项以及SAS 中的以下数据集,该数据集显示公司不同员工的总销售额:

 /*create dataset*/
data my_data;
    input employee $sales;
    datalines ;
At 32
B 10
C24
D 40
E 138
F 42
G 54
H 9
I 38
Day 22
K 18.5
;
run ;

/*view dataset*/
proc print data =my_data;

示例 1:使用不带小数位的 Z 格式

我们可以使用以下Z格式选项添加所需数量的前导零,以便sales列中的每个值的长度为 6:

 /*use Z format to add leading zeros to values in sales column*/
proc print data =my_data;
    z6 sales format . ;
run ; 

现在, “销售额”列中的每个值都具有尽可能多的前导零,以使长度达到 6。

因为我们没有在z6 中指定小数点后的任何值。我们告诉 SAS 不要显示小数点后的任何值,而只是将每个值四舍五入到最接近的整数。

例如, sales列中的最后一个值的值为18.5 ,但四舍五入为19 ,然后添加前导零以创建最终值000019 ,其总长度为 6 。

示例 2:使用带小数的 Z 格式

我们可以使用以下Z格式选项添加所需数量的前导零,以便sales列中的每个值的长度为 10,包括 1 位小数:

 /*use Z format to add leading zeros to values in sales column*/
proc print data =my_data;
    z10.1 sales format ;
run ; 

现在, “销售额”列中的每个值都具有所需数量的前导零,以使长度达到 10。

由于我们使用了z10.1,因此我们要求SAS在每个值的小数点后显示一个值。

另请注意,总长度10包括小数点和小数点后的值。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

SAS:如何以美元格式显示值
SAS:如何以百分比格式显示值
SAS:如何以时间格式显示值

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注