- 1、本文档共95页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SAS变量输入输出格式PPT
第13章 变量输入输出格式;本章内容包括: ;输入格式 ;输入格式使用方法 ;INPUT语句 ;例13.4 PUT函数将数值转换为字符。
data;
x=2557898;
y=put(x, $8.);
put y;
run;
例中,用PUT函数得到正确结果,即字符型2557898.
data;
x=2557898;
y=put(x, $3.);
put y;
run;
例中,Y的结果为3E6.
;在DATA步中用INFORMAT语句或ATTRIB语句 ;永久性与临时性联系 ;输入格式类型 ;w.d输入格式 ;COMMAw.d 输入格式 ;例13.10 数值变量输入格式应用举例。
data ;
informat x 8.2;
x=12345.1234;
put x=;
run;
?
data a;
x=12345.1234;
informat x 12.4;
format x 8.2;
put x=;
run;
?
data a;
input x;
informat x comma12.4;
cards;
12,345.1234
22,345.1234
;
run;;$w.输入格式 ;$CHARw输入格式 ;例13.13 不能放放在一起使用的语句。
informat x $char12.;
input x y z;
?
例13.14直接赋值为字符型变量。
data a;
x1=st92;
x2=st92;
informat x $8. ;
x3=12,345.1234;
run;;输出格式 ;通用规则:
所有输出格式必须包含一个点(.)作为名字的一部分;
省略W和D的值时,使用系统的缺省值;
无论怎样规定输出格式中的小数位,输出格式都不会影响存贮的数据值;
规定的输出格式宽度太窄小时,对字符格式截去右边的字符,对数值格式转换为BESTw.的格式;
使用一个不协调的输出格式时,SAS系统首先试着使用其它类型的类似格式。如果行不通,将输出一个错误信息在SAS日志。
;输出格式使用方法 ;PUT语句 ;PUT函数 ;DATA步中用FORMAT或ATTRIB语句 ;输出格式类型 ;;w.d输出格式 ;BESTw.格式 ;例13.20 用不同的BESTw.形式输出时,显示结果不一样,但在SAS存贮的都是原来的完整数值。
data;
x
put @10 x best6.;
run;
输出值为1.26E6。正确地输出这个值需要8列,使用E表示法把这个值压缩为6列.
data;
x
put @ 10 x best3.;
run; 输出值为1E6.
data;
x
put @ 10 x best2.;
run; 输出值为**.
;Ew.输出格式 ;输入输出控制流程 ;$w.输出格式 ;日期时间存贮方式 ;例13.25 表中天数的计算程序。
data;
date=mdy(1,1,1960);
put date 8.;
date=mdy(3,3,1962);
put date 8.;
date=mdy(8,4,1985);
put date 8.;
date=mdy(10,1,2002);
put date 8.;
date=mdy(7,4,1776);
put date 8.;
run;;SAS日期时间值存贮方式 ;例13.26 表中秒数的计算程序。
data;
hms=hms (21,50,51);
put hms=;
x=21*60*60+50*60+51;
put x=;
date=mdy(10,1,2002);
put date=;
dhms=dhms (date,21,50,51);
put dhms=;
y=date*24*3600+x;
put y=;
run;;日期时间输入格式 ;应用举例 ;日期时间输出格式 ;例13.28 使用SAS日期时间的输出格式。
data a;
input date mmddyy10.;
format date yymmdd10.;
put date=;
cards;
10-01-2002
10/01/2002
;
run;
data a;
input date mmddyy10.;
format date date9.;
put date=;
cards;
10-01-2002
10/01/2002
;
run;;data;
x=13807;
format x yymmdd10.;
put x=;
run;
显示结果:
x=1997-10-20
?
data;
date=11
文档评论(0)