Types 如何在SAS中使用PUT和INPUT numeric
我对SAS表中的某些列使用PUT和INPUT进行强制转换有一个问题 我正在尝试格式化: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= . 你能有一些想法吗? 谢谢
###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是数值变量。