- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SAS学习系列06. 使用SAS函数
06. 使用SAS函数
(一)创建并定义新变量
可以在数据步中,利用赋值语句创建或重新定义新变量(列),语法:
变量名=表达式;
注:(1)表达式可以是数值或字符常量、数学表达式、函数等;
(2)加减乘除幂:+ - * / **,也可以使用括号。
例1 下面数据(C:\MyRawData\Garden.dat)是番茄、南瓜、豌豆、葡萄的重量:
代码:
data homegarden;
infile c:\MyRawData\Garden.dat;
input Name $ 1-7 Tomato Zucchini Peas Grapes;
Zone = 14;
Type = home;
Zucchini = Zucchini * 10;
Total = Tomato + Zucchini + Peas + Grapes;
PerTom = (Tomato / Total) * 100;
run;
proc print data = homegarden;
title Home Gardening Survey;
run;
运行结果:
程序说明:
(1)5-8行使用了5个赋值语句,第6行改写旧变量,运行结果将输出所有变量;
(2)若观测值中有缺省值,相应的新变量也出现缺省值。
(二)使用SAS函数
一、SAS函数概述
SAS自带数百个函数,主要包括以下函数类:
字符/字符串函数
日期/时间函数
距离/州/邮编代码函数
数学函数
概率/描述统计/随机数函数
金融函数
宏函数
变量信息函数
函数基本调用形式(可以嵌套调用):
函数名(参数1,参数2,…);
例2南瓜雕刻比赛的数据(C:\MyRawData\pumpkin.dat)包含了参赛者的名字、年龄、雕刻的南瓜类型、报名日期、五位裁判给出的分数:
代码:
data contest;
infile c:\MyRawData\Pumpkin.dat;
input Name $16. Age 3. +1 Type $1. +1 Date MMDDYY10.
(Scr1 Scr2 Scr3 Scr4 Scr5) (4.1);
AvgScore = mean(Scr1, Scr2, Scr3, Scr4, Scr5);
DayEntered = day(Date);
Type = upcase(Type); /* 转化为大写 */
run;
proc print data = contest;
title Pumpkin Carving Contest;
run;
运行结果:
程序说明:
均值函数mean( )返回非缺省值参数的平均值;
day( )函数返回日期值距离1961年1月1日的天数。
二、常用的数学函数
int(x)
取整(舍去小数)
round(x)
取整(四舍五入)
log(x)
取自然对数
log10(x)
取以10为底的对数
max(x1,x2,…)
返回最大值(忽略缺省值)
min(x1,x2,…)
返回最小值(忽略缺省值)
mean(x1,x2,…)
返回平均值(忽略缺省值)
sum(x1,x2,…)
返回求和值(忽略缺省值)
n(x1,x2,…)
返回非缺省值的个数
nmiss(x1,x2,…)
返回缺省值的个数
三、常用的日期函数
datejul(day)
将日期数值day转化为Julian日期值
today()
返回今天的日期数值
mdy(mm,dd,yy)
将月mm、日dd、年yy转化为日期数值
day(date)
返回日期数值的日
month(date)
返回日期数值的月(1-12)
year(date)
返回日期数值的年
qtr(date)
返回日期数值的季(1-4)
weekday(date)
返回日期数值是周几(1=星期日)
yrdif(date1,date2, ‘AGE’)
计算两个日期的“年龄差”
示例:a=MDY(4,13,2000); b=MDY(8,13,2012);
YRDIF(a,b,AGE); 返回 12.3342
注:(1)日期数值 = 当前日期距离1960年1月1日的天数;
(2)Julian日期为当年的第多少天,例如2月1日是32.
四、常用的字符串函数
anyalnum(str, n)
返回str从n位置开始,第一次出现字母或数字的位置
示例:a=123 E St, #2 ; anyalnum (a); (默认)返回 1; anyalnum (a,10); 返回12
anyalpha(str, n)
返回str从n位置开始,第一次出现字母的位置
anydigit(str, n)
返回str从n位置开始,第一次出现数字的位置
anyspace(str, n)
返回str从n位置开始,第一次出现空格的
您可能关注的文档
最近下载
- 数据通信技术 子网掩码、子网划分、网关 子网掩码与子网划分.ppt VIP
- 柑橘新品种引种表现及栽培技术要点(共字).doc VIP
- 家校社协同育人新范式实施策略.docx
- 美甲店的前景及可行性研究报告.docx
- 班主任计划和总结及班主任手册.doc VIP
- T_CFIAS 3040—2025(混合型饲料添加剂25-羟基胆钙化醇(25-羟基维生素D3)).pdf
- 医疗器械(耗材)项目投标服务实施方案(技术方案).pdf VIP
- 建设工程工程量清单计价规范(GB 50500-2024).docx VIP
- 西门子保护说明书7SJ686用户手册.pdf VIP
- 5.1.3.1生物圈(第一课时) 课件--人教版(2024)生物八年级上册.pptx VIP
原创力文档


文档评论(0)