Types 如何在SAS中使用PUT和INPUT numeric

Types 如何在SAS中使用PUT和INPUT numeric,types,sas,format,Types,Sas,Format,我对SAS表中的某些列使用PUT和INPUT进行强制转换有一个问题 我正在尝试格式化: ###I need: Using: tipdoc='01' -> tipdoc=1 input(tipdoc, 1.) coddoc=1234 -> coddoc=00001234 put(coddoc, z8.) 但是,我有一个结果: tipdoc=0 coddoc= . 你能有一些想法吗? 谢谢

我对SAS表中的某些列使用PUT和INPUT进行强制转换有一个问题

我正在尝试格式化:

               ###I need:          Using: 
tipdoc='01' -> tipdoc=1            input(tipdoc, 1.)
coddoc=1234 -> coddoc=00001234     put(coddoc, z8.) 

但是,我有一个结果:

tipdoc=0
coddoc=       .
你能有一些想法吗?
谢谢。

信息告诉
输入
如何解释输入值<代码>1。仅选择
0
数字,则得到0个数字
coddoc
已经是一个数字,只需要一种显示前导零的格式,或者可能需要一个带前导零的字符变量

data want;

tipdoc='01';
coddoc=1234;

tipdoc_num = input(tipdoc,best12.);
format coddoc z8.;

coddoc_char = put (coddoc,z8.);

run;

ods listing;
proc print data=want;
run;

--------

                             tipdoc_    coddoc_
Obs    tipdoc      coddoc      num        char

 1       01      00001234       1       00001234

信息告诉
输入
如何解释输入值<代码>1。仅选择
0
数字,则得到0个数字
coddoc
已经是一个数字,只需要一种显示前导零的格式,或者可能需要一个带前导零的字符变量

data want;

tipdoc='01';
coddoc=1234;

tipdoc_num = input(tipdoc,best12.);
format coddoc z8.;

coddoc_char = put (coddoc,z8.);

run;

ods listing;
proc print data=want;
run;

--------

                             tipdoc_    coddoc_
Obs    tipdoc      coddoc      num        char

 1       01      00001234       1       00001234

您可以使用格式将值转换为文本。您可以使用INFORMAT将文本转换为值。将格式与FORMAT和PUT语句以及PUT()(和PUTN()和PUTC()函数一起使用。将INFORMATS与INFORMAT和INPUT语句以及INPUT()(和inpututc()和INPUTN()函数一起使用

如果
TIPDOC
是字符串,则使用至少与变量的最长值一样宽的信息。或者为了安全起见,您可以使用您正在使用的信息允许的最大宽度

numberic_tipdoc = input(tipdoc,32.);
如果
CODDOC
是一个数字,则可以使用一种格式以前导零显示该值。或者使用
PUT()
函数创建具有格式化值的字符变量

format coddoc z8. ;
character_coddoc = put(coddoc, z8.);
如果CODDOC的转换值显示为一个期间,则它缺少一个值。这就是SAS显示缺失数值的方式。您可以使用
MISSING
选项告诉SAS使用其他字符显示缺少的值。例如,要将其显示为空间,请使用命令

options missing=' ';
在使用PUT()函数或使用其他方法打印值之前

或者,如果缺少
CODDOC
,您可以进行程序测试,然后为新变量使用不同的值

character_coddoc = put(coddoc, z8.);
if missing(coddoc) then character_coddoc='missing';

您可以使用格式将值转换为文本。您可以使用INFORMAT将文本转换为值。将格式与FORMAT和PUT语句以及PUT()(和PUTN()和PUTC()函数一起使用。将INFORMATS与INFORMAT和INPUT语句以及INPUT()(和inpututc()和INPUTN()函数一起使用

如果
TIPDOC
是字符串,则使用至少与变量的最长值一样宽的信息。或者为了安全起见,您可以使用您正在使用的信息允许的最大宽度

numberic_tipdoc = input(tipdoc,32.);
如果
CODDOC
是一个数字,则可以使用一种格式以前导零显示该值。或者使用
PUT()
函数创建具有格式化值的字符变量

format coddoc z8. ;
character_coddoc = put(coddoc, z8.);
如果CODDOC的转换值显示为一个期间,则它缺少一个值。这就是SAS显示缺失数值的方式。您可以使用
MISSING
选项告诉SAS使用其他字符显示缺少的值。例如,要将其显示为空间,请使用命令

options missing=' ';
在使用PUT()函数或使用其他方法打印值之前

或者,如果缺少
CODDOC
,您可以进行程序测试,然后为新变量使用不同的值

character_coddoc = put(coddoc, z8.);
if missing(coddoc) then character_coddoc='missing';

coddoc
是字符变量,还是应以前导零显示的数值?您好,coddoc是数值变量。
coddoc
是字符变量,还是应以前导零显示的数值?您好,coddoc是数值变量。