ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:19.62KB ,
资源ID:4487270      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4487270.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SAS常用函数大全.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SAS常用函数大全.docx

1、SAS常用函数大全SAS常用函数大全一、数学函数 ABS(x) 求x的绝对值。 MAX(x1,x2,xn) 求所有自变量中的最大一个。 MIN(x1,x2,xn) 求所有自变量中的最小一个。 MOD(x,y) 求x除以y的余数。 SQRT(x) 求x的平方根。 ROUND(x,eps) 求x按照eps指定的精度四舍五入后的结果,比如ROUND(5654.5654,0.01) 结果为5654.57,ROUND(5654.5654,10)结果为5650。 CEIL(x) 求大于等于x的最小整数。当x为整数时就是x本身,否则为x右边最近的整数。 FLOOR(x) 求小于等于x的最大整数。当x为整数时

2、就是x本身,否则为x左边最近的整数。 INT(x) 求x扔掉小数部分后的结果。 FUZZ(x) 当x与其四舍五入整数值相差小于1E-12时取四舍五入。 LOG(x) 求x的自然对数。 LOG10(x) 求x的常用对数。 EXP(x) 指数函数 。 SIN(x), COS(x), TAN(x) 求x的正弦、余弦、正切函数。 ARSIN(y) 计算函数y=sin(x)在区间的反函数,y取-1,1间值。 ARCOS(y) 计算函数y=cos(x)在的反函数,y取-1,1间值。 ATAN(y) 计算函数y=tan(x)在 的反函数,y取间值。 SINH(x), COSH(x), TANH(x) 双曲正

3、弦、余弦、正切 ERF(x) 误差函数 GAMMA(x) 完全 函数 此外还有符号函数SIGN,函数一阶导数函数DIGAMMA,二阶导数函数TRIGAMMA ,误差函数余函数ERFC,函数自然对数LGAMMA,ORDINAL函数,AIRY 函数,DAIRY函数,Bessel函数JBESSEL,修正的Bessel函数IBESSEL,等等。 二、数组函数 数组函数计算数组的维数、上下界,有利于写出可移植的程序。数组函数包括: DIM(x) 求数组x第一维的元素的个数(注意当下界为1时元素个数与上界相同,否则元素个数不一定与上界相同)。 DIM k(x) 求数组x第k维的元素的个数。 LBOUND(

4、x) 求数组x第一维的下界。 HBOUND(x) 求数组x第一维的上界。 LBOUND k(x) 求数组x第 k维的下界。 HBOUND k(x) 求数组x第 k维的上界。 三、字符函数 较重要的字符函数有: TRIM(s) 返回去掉字符串s的尾随空格的结果。 UPCASE(s) 把字符串s中所有小写字母转换为大写字母后的结果。 LOWCASE(s) 把字符串s中所有大写字母转换为小写字母后的结果。 INDEX(s,s1) 查找s1在s中出现的位置。找不到时返回0。 RANK(s) 字符s的ASCII码值。 BYTE(n) 第n个ASCII码值的对应字符。 REPEAT(s,n) 字符表达式s

5、重复n次。 SUBSTR(s,p,n) 从字符串s中的第p个字符开始抽取n个字符长的子串 TRANWRD(s,s1,s2) 从字符串s中把所有字符串s1替换成字符串s2后的结果。 其它字符函数还有 COLLATE,COMPRESS,INDEXC,LEFT,LENGTH,REVERSE,RIGHT,SCAN ,TRANSLATE,VERIFY,COMPBL,DEQUOTE,INDEXW,QUOTE,SOUNDEX,TRIMN,INDEXW。 四、日期和时间函数 常用日期和时间函数有: MDY(m,d,yr) 生成yr年m月d日的SAS日期值 YEAR(date) 由SAS日期值date得到年 M

6、ONTH(date) 由SAS日期值date得到月 DAY(date) 由SAS日期值date得到日 WEEKDAY(date) 由SAS日期值date得到星期几 QTR(date) 由SAS日期值date得到季度值 HMS(h,m,s) 由小时h、分钟m、秒s生成SAS时间值 DHMS(d,h,m,s) 由SAS日期值d、小时h、分钟m、秒s生成SAS日期时间值 DATEPART(dt) 求SAS日期时间值dt的日期部分 INTNX(interval,from,n) 计算从from开始经过n个in间隔后的SAS日期。其中interval 可以取YEAR、QTR、MONTH、WEEK、DAY等

7、。比如,INTNX(MONTH, 16Dec1997d, 3)结果为1998年3月1日。注意它总是返回一个周期的开始值。 INTCK(interval,from,to) 计算从日期from到日期to中间经过的interval间隔的个数,其中interval取MONTH等。比如,INTCK(YEAR, 31Dec1996d, 1Jan1998d)计算1996年12 月31日到1998年1月1日经过的年间隔的个数,结果得2,尽管这两个日期之间实际只隔1年。 其它日期和时间函数还有DATE、TODAY、DATETIME、DATEJUL、JULDATE、 HOUR、MINUTE、SECOND 、TIM

8、E、TIMEPART等。详见SAS系统,Base SAS软件使用手册、SAS系统,SAS/ETS软件使用手册。 五、分布密度函数、分布函数 作为一个统计计算语言,SAS提供了多种概率分布的有关函数。分布密度、概率、累积分布函数等可以通 过几种统一的格式调用,格式为 分布函数值 = CDF( 分布, x ); 密度值 = PDF( 分布, x ); 概率值 = PMF( 分布, x ); 对数密度值 = LOGPDF( 分布, x ); 对数概率值 = LOGPMF( 分布, x ); CDF计算由分布指定的分布的分布函数, PDF计算分布密度函数值,PMF计算离散分布的分布概率,LOGPDF为

9、PDF的自然对数,LOGPMF为PMF的自然对数。函数在自变量 x处计算,表示可选的参数表。 分布类型取值可以为: BERNOULLI, BETA, BINOMIAL, CAUCHY, CHISQUARED, EXPONENTIAL, F, GAMMA, GEOMETRIC, HYPERGEOMETRIC, LAPLACE, LOGISTIC, LOGNORMAL, NEGBINOMIAL, NORMAL 或 GAUSSIAN, PARETO, POISSON, T, UNIFORM, WALD 或 IGAUSS, and WEIBULL。可以只写前四个字母。 例如,PDF(NORMAL, 1

10、.96)计算标准正态分布在1.96处的密度值(0.05844),CDF(NORMAL, 1.96)计算标准正态分布在1.96处的分布函数值(0.975)。PMF对连续型分布即PDF。 除了用上述统一的格式调用外,SAS还单独提供了常用的分布的密度、分布函数。 PROBNORM(x) 标准正态分布函数 PROBT(x,df) 自由度为df的t分布函数。可选参数nc为非中心参数。 PROBCHI(x,df) 自由度为df的卡方分布函数。可选参数nc为非中心参数。 PROBF(x,ndf,ddf) F(ndf,ddf)分布的分布函数。可选参数nc为非中心参数。 PROBBNML(p,n,m) 设随机

11、变量Y服从二项分布B(n,p),此函数计算P(Y m)。 POISSON(lambda,n) 参数为lambda的Poisson分布Y n的概率。 PROBNEGB(p,n,m) 参数为(n,p)的负二项分布Y m的概率。 PROBHYPR(N,K,n,x) 超几何分布的分布函数。设N个产品中有K个不合格品,抽取n个样品,其中不合格品数小于等于x的概率为此函数值。可选参数r是不匀率,缺省为1 ,r代表抽到不合格品的概率是抽到合格品概率的多少倍。 PROBBETA(x,a,b) 参数为(a,b)的Beta分布的分布函数。 PROBGAM(x,a) 参数为a的Gamma分布的分布函数。 PROBM

12、C 计算多组均值的多重比较检验的概率值和临界值。 PROBBNRM(x,y,r) 标准二元正态分布的分布函数,r为相关系数。 六、分位数函数 分位数函数是概率分布函数的反函数。其自变量在0到1之间取值。分位数函数计算的是分布的左侧分位 数。SAS提供了六种常见连续型分布的分位数函数。 PROBIT(p) 标准正态分布左侧p分位数。结果在,5到5之间。 TINV(p, df ) 自由度为df的t分布的左侧p分位数。可选参数nc为非中心参数。 CINV(p,df) 自由度为df的卡方分布的左侧p分位数。可选参数nc为非中心参数。 FINV(p,ndf,ddf) F(ndf,ddf)分布的左侧p分位

13、数。可选参数nc为非中心参数。 GAMINV(p,a) 参数为a的伽马分布的左侧p分位数。 BETAINV(p,a,b) 参数为(a,b)的贝塔分布的左侧p分位数。 七、随机数函数 SAS可以用来进行随机模拟。它提供了常见分布的伪随机数生成函数。 1(均匀分布随机数 有两个均匀分布随机数函数:UNIFORM(seed),seed必须是常数,为0,或5位、6位、 7位的奇数。RANUNI(seed),seed为小于2*31-1的任意常数。在同一个数据步中对同一个随机数函数的多次调用将得到不同的结果,但不 同数据步中从同一种子出发将得到相同的随机数序列。随机数种子如果取0或者负数则种子采用系统日期

14、时间。 2(正态分布随机数 有两种,NORMAL(seed),seed为0,或5位、6位、7位的奇数。 RANNOR(seed),seed为任意数值常数。 3(指数分布随机数 RANEXP(seed),seed为任意数值,产生参数为1的指数分布的随机数。参数为 lambda的指数分布可以用RANEXP(seed)/lambda得到。 另外若Y=alpha,beta*LOG(RANEXP(seed),则Y为位置参数为 alpha,尺度参数为beta的极值分布。若Y=FLOOR(-RANEXP(seed)/LOG(p),那么Y是具有参数p的几何分布变量。 4(伽马分布随机数 RANGAM(seed

15、, alpha),seed为任意数值常数,alpha0,得到参数为alpha的伽马分布。设X=RANGAM(seed, alpha),则Y=beta*X是形状参数为alpha,尺度参数为beta的GAMMA分布随机数。如果alpha是整数,则Y=2*X是自由度为 2*alpha的卡方分布随机数。 如果alpha是正整数,则Y=beta*X是Erlang分布随机数,为alpha个独立的均值为 beta的指数分布变量的和。 如果Y1=RANGAM(seed,alpha),Y2=RANGAM(seed,beta),在 Y=Y1/(Y1+Y2)是参数为(alpha,beta )的贝塔分布随机数。 5(

16、三角分布随机数 RANTRI(seed,h),seed为任意数值常数,0h0的泊松分布随机 数,seed为任意数值。 9(一般离散分布随机数 RANTBL(seed, p1, , pn)生成取1,2,n的概率分别为p1,pn的离散分布随机数。 八、样本统计函数 样本统计函数把输入的自变量作为一组样本,计算样本统计量。其调用格式为“函数名(自变量1,自变量2,自变量n)”或者“函数名(OF 变量名列表)”。比如SUM是求和函数,如果要求x1,x2,x3的和,可以用SUM(x1,x2,x3),也可以用SUM(OF x1-x3)。这些样本统计函数只对自变量中的非缺失值进行计算,比如求平均时把缺失值不

17、计入内。 各样本统计函数为: MEAN 均值 MAX 最大值 MIN 最小值 N 非缺失数据的个数 NMISS 缺失数值的个数。 SUM 求和 VAR 方差 STD 标准差 STDERR 均值估计的标准误差,用STD/SQRT(N)计算。 CV 变异系数 RANGE 极差 CSS 离差平方和 USS 平方和 SKEWNESS 偏度 KURTOSIS 峰度 注意:数据集的存储一般是每行为一个个体的观测值,每列是个体的一个属性(变量), 所以统计一般应该对列进行,而不是象这里对行进行,把各变量作为一个样本的各个观测处理。这里提供的函数主要用于进行一些自编程的计算。 九、SAS/IML矩阵功能简介

18、SAS/IML是SAS提供的一个可以进行矩阵运算编程的工 具,详细使用请参见有关资料或系统帮助(Help | Extended Help | SAS System Help: Main Menu | Help for SAS Products | SAS/IML)。它可以用来进行交互的矩阵运算,也可以编好一个程序再一起运行。程序可以使用分支、循环、模块化子程序等控制结构。数据步中的函数大都 能在SAS/IML中使用,SAS/IML 也提供了一些特有的函数。SAS/IML的一个方便之处是它可以直接读取SAS的数据集并把结果写成SAS数据集,它也有存取外部文件的功能。 要交互运行SAS/IML,只

19、要在程序窗口输入 proc iml; reset print; 提交此程序,就可以进入交互的SAS/IML运算状态。退出用 QUIT语句。SAS/IML中可以使用标量、行向量、列变量和矩阵,可以使用字符型数据。变量取名规则遵循SAS语言的统一规定,变量可以存储标量、向 量和矩阵。 赋值用等号。例如: sc = 15.25; vh = 1 2; vh1=5:9; vv = 3, 4; mat1 = 1 2 3, 4 5 6; mat2 = Li Ming, Zhang Chong; 我们注意赋值语句是一个SAS语句,它以分号结尾。上面定义了标量sc,行向量vh和vh1,列向量vv,两行两列的矩阵

20、mat1,字符型矩阵mat2。 由上可见,写矩阵常量时,行的元素之间以空格分隔,行之间以逗号分割。可以用“开始:结尾”的写法生成一个等差数列行向量。 矩阵之间可以用、,等符号进行元素两两间的比较。要得 到一个标量的结果,可以用ALL()函数表示自变量的各元素均为真(非零),用ANY()函数表示自变量的元素中至少一个为真。可以用&、|、 连接两个逻辑型矩阵(元素间的与、或、非)。 用|表示矩阵左右连接,用/表示矩阵上下连接。x表示x 的转置。 SAS/IML中可以进行通常的矩阵加减乘(,、,、*)运 算,也可以进行对应元素之间的乘除(,、/)运算。矩阵加减必须两个矩阵大小完全相等,或者其中一个是

21、标量。矩阵乘法要求第一矩阵的列数等于第二矩阵的行数,或其中一个是标量。矩阵元素之间的乘除运算是对应元素进行乘除,当两个矩阵大小完全相同时可以进行运算,其中有一个是标量时可以进行运算,另外,如果其中有一个是行(列)向量而其长度与另一个矩阵的列数(行数)相同也可以进行运算。矩阵逆要用INV()函数运算。 为了读入一个数据集,先打开数据集,用如 USE sasuser.c9501; 然后用READ ALL VAR 变量列表 的格式读入数据集的各变量值,例如: READ ALL VAR name math chinese; print name math chinese; 这时三个变量都可以作为列向量来使用。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1