SAS的输入输出格式2011

上传人:平*** 文档编号:48810717 上传时间:2018-07-20 格式:PPT 页数:30 大小:445.65KB
返回 下载 相关 举报
SAS的输入输出格式2011_第1页
第1页 / 共30页
SAS的输入输出格式2011_第2页
第2页 / 共30页
SAS的输入输出格式2011_第3页
第3页 / 共30页
SAS的输入输出格式2011_第4页
第4页 / 共30页
SAS的输入输出格式2011_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《SAS的输入输出格式2011》由会员分享,可在线阅读,更多相关《SAS的输入输出格式2011(30页珍藏版)》请在金锄头文库上搜索。

1、SAS的输入输出格式n什么是格式(Format)?Format is an instruction the SAS System uses to display or write each value of a variable.即:读入不同格式的数据,并按不同要求显示数据。n常见数据的数据格式:字符型数值型日期时间型用户自定义型( 用FORMAT过程定义)n注:除自定义类型外,其他类型的数据SAS系统均已定义好了相应的格式,只需 要调用即可n输入格式和输出格式的使用:输入格式通常在input语句中使用,输出格式通常 在format语句中使用。1、字符型输入/输出格式n1、输入格式:$w. 和

2、 $CHARw.共同特点:缺省值均为变量的长度不同点:$w. :必须指定w的值,不保留字符串前的空格$CHARw.:w的缺省值为8,保留字符串前的空 格2、输出格式:$w. 和 $CHARw.共同特点:保留字符串前的空格 注:一个汉字占两个字节 Obsname 1 Bill Clinton 2 George Bush 3 Tony Blair4 Saddam Hussein5 Vladimir Putin例1. 下面是一些人名,请将其读入到一个变量NAME中 ,注意:姓和名之间有一个空格,建立的SAS数据集如 右边的形式。Bill ClintonGeorge BushTony BlairSad

3、dam Hussein Vladimir Putin1、字符型输入/输出格式data a;input name $ char14.;cards;Bill ClintonGeorge BushTony BlairSaddam Hussein Vladimir Putin;proc print;run;Obs name1 Bill Clinton2 George Bush3 Tony Blair4 Saddam Hussein5 Vladimir Putin$CHARw. :读取包含空格的字符串 如果将char14.去掉,语句改 为:input name $;结果是什么样的呢?2、数值型输入/输出

4、格式n1、输入格式:w.dw.d:读入宽度为w的原始数据,并存为SAS数值,也能自 动读入以浮点方式表示的原始数据。遵循以下原则:2、数值型输入/输出格式2、输出格式: Bestw.d, w.d 和 Ew.Bestw.d:系统默认格式(相当于后两种格式的自动识 别)。w缺省值为12,最大值可达32w.d:将数值用不超过d位小数及总宽度不超过w位的定 点数表示Ew. :用宽度不超过w的浮点数表示注:宽度设置不合适时,自动调用SAS系统同宽度的Best格式表示。n1、特殊的输入格式COMMAw.d :专为读入金额的数据而 设置。读入宽度为w的字符串,并能自动 去除逗号,空格,美圆符号和短横线,保

5、留数字和小数点,还可将用括号括起来的 数据记为负数。读入后按格式w.d记入数 值。DOLLARw.d 为其别名。 2、数值型输入/输出格式n2、特殊的输出格式: COMMAw.d 和 DOLLARw.dCOMMAw.d :将数值以包含小数位数 不超过d位的定点数表示,并在整数部分 自右往左每三位用逗号分隔,总字符数不 超过w。COMMA6.为其缺省设置。 DOLLARw.d 在COMMA表示的数据左 侧加上美圆符号。 2、数值型输入/输出格式data a; input x comma7. y comma7.; cards; 12,002 34,231 2,210 21,311 run; pro

6、c print; run;OUTPUT:Obs x y1 12002 342312 2210 21311例2. 有如下两列数据,数据中包含有逗号,请建立一 个SAS数据集,变量为x、y。12,002 34,2312,210 21,311data a; input x comma7.2 y omma7.4; cards; 12,002 34,231 2,210 21,311 run; proc print; run;OUTPUT:Obs x y1 120.02 3.42312 22.10 2.1311例3. 有如下两列数据,其中第一列后两位数字为小数,第 二列后4位为小数,例如第一个数据12,0

7、02读入后应为 120.02。请建立一个SAS数据集,变量为x、y。12,002 34,2312,210 21,311data a; input x dollar8. y dollar8.; cards; $12,002 $34,231 $2,210 $21,311 run; proc print; run;OUTPUT:Obs x y1 12002 342312 2210 21311例4. 有如下两列数据,数据中包有$和逗号,请建立 一个SAS数据集,变量为x、y。(例如$12,002读入后 应为12002 )$12,002 $34,231$2,210 $21,311data a; inpu

8、t x dollar8.2 y dollar8.4; cards; $12,002 $34,231 $2,210 $21,311 run; proc print; run;OUTPUT:Obs x y1 120.02 3.42312 22.10 2.1311例5. 有如下两列数据,其中第一列后两位数字为小数, 第二列后4位为小数,例如第一个数据$12,002读入后应 为120.02。请建立一个SAS数据集,变量为x、y。$12,002 $34,231$2,210 $21,311n日期,时间,日期时间型的数据均以 与0值的差值数据存入计算机。n零点值的规定日期型: 0 值(1960.1.1),其

9、他日期为与其的差 值时间型: 0值(0时0分0秒)日期时间型 0值(1960年1月1日0时0分0秒) 3、日期时间型输入/输出格式n1、日期输入格式 :YYMMDDw.读入的数据形式为:yymmdd / yyyymmddW:6-32,缺省为6 其他格式:MMDDYYw. 和DDMMYYw.MMDDYYw.读入的数据形式为:mmddyy/mmddyyyy DDMMYYw.读入的数据形式为:ddmmyy/ddmmyyyy3、日期时间型输入/输出格式n2、日期输出格式 :YYMMDDxw.读入的数据形式为:yymmdd / yyyymmddW:2-10(x为N时,2-8),缺省为8x B C D N

10、 P S分隔符 空格 : - 无 . /YYMMDDw.相当于YYMMDDDw. 其他格式:MMDDYYxw. 和 DDMMYYxw.3、日期时间型输入/输出格式n3、特殊日期输入/输出格式:DATEw.输入/输出日期的格式为: ddmmmyy/ddmmmyyyy缺省方式为DATE7.3、日期时间型输入/输出格式n3、特殊日期输入/输出格式:DATEw.输入/输出日期的格式为: ddmmmyy/ddmmmyyyy缺省方式为DATE7.3、日期时间型输入/输出格式n4、时间输入格式:TIMEw.读入的时间形式为:hh:mm:ss.ss 时分秒间的分隔符有:(:),(空格),(-);还有PM,AM

11、 例:1 40 35.37 PM 读入格式time14. 49235.37 输出格式 timeampm13.2 1:40:35.37 PMn5、时间输出格式:TIMEw.dd:可指明秒数包含的小数位数。 输出时总带有分隔符(:) 宽度不够时,先显示小时数,再是分钟,再是秒数。3、日期时间型输入/输出格式n6、日期时间输入格式:DATETIMEw.读入的日期时间形式为:ddmmmyy hh:mm:ss.ss/ddmmmyyyy hh:mm:ss.ss W:13-40,缺省18n7、日期时间输出格式:DATETIMEw.d输出格式形式: ddmmmyy:hh:mm:ss.ss/ddmmmyyyy:

12、hh:mm:ss.ss W:7-40,缺省16 宽度不够时,从秒数开始截尾,宽度足够时(w=19+d)时自动显 示四位数的年份。3、日期时间型输入/输出格式nYEARCUTOFF=1920(此值可修改)管理100年的时间:1920-2019例:12/07/41 表示12/07/194118Dec15 表示18Dec20153、两位数年份输入data b;input dd date15.;format dd date9.;cards;1Jan200203 Jan 200315/May/200412-FEB-200517*May* %20061*OCT*200730%sep%/2008;proc

13、print;run;Obsdd101JAN2002203JAN2003315MAY2004412FEB2005517MAY2006601OCT2007730SEP20081Jan2002 03 Jan 2003 15/May/2004 12-FEB-2005 17*May* %2006 1*OCT*2007 30%sep%/200801312002 03122003 5 13 2004 4 21 2005 5 25 2006 1/2/2007 3-24-2008data b; input dd mmddyy10.; format dd mmddyy10.; cards; 01312002 03

14、122003 5 13 2004 4 21 2005 5 25 2006 1/2/2007 3-24-2008 ; proc print; run;Obsdd101/31/2002203/12/2003305/13/2004404/21/2005505/25/2006601/02/2007703/24/20084、自定义格式n使用PROC FORMAT过程进行格式的自 定义。PROC FORMAT ;INVALUE 格式名 格式; VALUE 格式名 格式; RUN;INVALUE:定义输入格式 VALUE : 定义输出格式。 下面只介绍定义输出格式(自定义格式比较特别)。语法:PROC FO

15、RMAT;VALUE 自定义输出格式名字 定义的格式 ;RUN; 自定义输出格式名字:应符合SAS的命名要求,注 意最后一个字符不能是数字。 定义的格式: 原始值=格式化的输出值4、自定义格式例6. 下面是 “问卷调查”资料的部份数据。变量sex的赋值 是:1=Male,2=Female,变量Band46的赋值是:A=增加, B=不变, C=减弱 ,请建立一个SAS数据集EX,对变量 sex、Band46进行格式化。data qespart;input id$ sex height weight band46$;cards;cnw1r01215449Ccnw1r02116964Bcnw1r04116967Acnw1r05215350Bcnw1r06216050Acnw2r02215646Acnw2r03117362Bcnw2r04116857Bcnw2r05215545Brun;proc print;run;Obsidsexheightweightband46 1 cnw1r01215449 C 2 cnw1r02116964 B 3 cnw1r04116967 A 4 cnw1r05215350 B 5 cnw1r0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号