我正在从包含 VARCHAR(5) 键字段的数据库创建 SAS 数据集。
此字段包括一些使用全部 5 个字符的条目和一些使用较少的条目。
当我导入此数据时,我更愿意填充所有较短的条目以使用所有五个字符。对于这个例子,我想用 0
在左边填充,字符零。所以,114
会变成00114
, ABCD
会变成0ABCD
, 和 EA222
会保持原样。
我已经用一个简单的数据语句尝试了这个,但当然以下不起作用:
data test;
set databaseinput;
format key $5.;
run;
我尝试使用用户定义的信息来做到这一点,但我认为不可能在字符字段上正确指定范围,每 this SAS KB answer .另外,我很确定 proc 格式不会让我根据传入变量动态定义结果。
我确信这里有一个明显的解决方案,但我只是想念它。
最佳答案
这是一个替代方案:
data padded_data_dsn; length key $5;
drop raw_data;
set raw_data_dsn(rename=(key=raw_data));
key = translate(right(raw_data),'0',' ');
run;
关于sas - 如何在 SAS 中填充字符字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8039239/