您好,欢迎访问三七文档
【SAS常用函数大全】引言1.字符函数2.日期和时间函数3.数组函数4.数学函数5.样本描述统计函数6.特殊函数7.随机数函数8.宏函数9.变量信息函数10.分布密度函数、分布函数11.分位数函数一、字符函数1.TRIM(s):返回去掉字符串s的尾随空格的结果。2.UPCASE(s):把字符串s中所有小写字母转换为大写字母后的结果。3.LOWCASE(s):把字符串s中所有大写字母转换为小写字母后的结果。4.INDEX(s,s1):查找s1在s中出现的位置。找不到时返回0。5.RANK(s):字符s的ASCII码值。6.BYTE(n):第n个ASCII码值的对应字符。7.REPEAT(s,n):字符表达式s重复n次。8.SUBSTR(s,p,n):从字符串s中的第p个字符开始抽取n个字符长的子串9.TRANWRD(s,s1,s2):从字符串s中把所有字符串s1替换成字符串s2后的结果。10.PROPCASE(s):把字符串s的第一个字母大写。11.CATX(d,s1,s2):把字符串s1和字符串s2通过d(如'-')连接返回结果。12.COMPBL(s):把字符串s中的不同长度空格变为长度为1的空格返回结果。13.COMPRESS(s,c,m):将字符串c(默认为空格)从字符串中移除,m为对d的添加项如下:d增加数字到初始字符里(chars)。f增加下划线和字母(A-Z,a-z)到初始字符里(chars)。g增加图形字符到初始字符里(chars)。k不移除初始字符(chars)而是返回这些字符。l增加小写字母(a-z)。n增加数字、下划线和字母(A-Z,a-z)。p增加标点符号。s增加空格,包括空格,水平制表符,垂直制表符,回车符,换行符和换页符u增加大写字母(A-Z)。a增加(A-Z,a-z)到初始字符里(chars)。14.ANYALNUM(s,start):查找字符串s中从start位置开始第一个数字或字母的位置。15.ANYALPHA(s,start):查找字符串s中从start位置开始第一个字母的位置。16.ANYDIGIT(s,start):查找字符串s中从start位置开始第一个数字的位置。17.ANYPUNCT(s,start):查找字符串s中从start位置开始第一个特殊标点字符的位置。18.ANYSPACE(s,start):查找字符串s中从start位置开始第一个空格的位置。19.ANYUPPER(s,start):查找字符串s中从start位置开始第一个大写字母的位置。20.NOTALNUM(s,start):查找字符串s中从start位置开始第一个非数字和字母的位置。21.NOTALPHA(s,start):查找字符串s中从start位置开始第一个非字母的位置。22.NOTUPPER(s,start):查找字符串s中从start位置开始第一个非大写字母的位置。23.FIND(s,c,m,start):查找字符串s中从start开始字符串c第一次出现的位置,m为i时忽略大小写。24.FINDC(s,c,m,start):查找字符串s中从start开始字符串c中任何一个字符第一次出现得的位置,m为对d的添加项如下:i忽略大小写t忽略字符串两边首尾的空格k查找除c中的任何字符a增加大写和小写字母(a-z)(A-Z)d增加数字25.FINDW(s,w,m,start):查找字符串s中以w为分隔符(默认为空格)从start位置开始第一个出现字符串整体w的位置。26.INDEXC(s,s1,s2,sn):查找多个字符串s1,s2,s3在s中出现的位置。找不到时返回0。27.VERIFY(s,s1):查找字符串s中第一个非字符串s1中任何字符的位置,找不到时返回0。28.CALLCATS(s,s1,s2,sn):把字符串S1-Sn去除首尾空格连接后赋值给变量s。29.CALLCATX(d,s,s1,s2,sn):把字符串S1-Sn去除首尾空格通过d连接后赋值给变量s30.LEFT(s):去除字符串s的左边空格。31.STRIP(s):返回去掉字符串s首尾空格的结果。32.SCAN(s,n,d,m):返回以d为分隔符分隔后字符串s的第n个字符串的结果,m为对d的修正项。33.TRANSLATE(s,t1,f1,t2,f2..tn,fn):返回将单字符f1变为t1,fn变为tn后的字符串s的结果。34.LENGTH(s):返回去除尾部空格后字符串s的长度。35.COUNT(s,s1,m):返回字符串s1在字符串s中出现的次数,m为i时忽略大小写。36.COUNTC(s,s1,m):返回字符串s1中任何单字符在字符串s中出现的次数,m→i时忽略大小写。37.COUNTW(s,d,m):返回以d为分隔符的字符串s中字符串个数,m为对d修正项。38.MISSING(s):返回s是否为缺失值,是返回1,不是返回0。39.COALESCEC(s1,s2,..,sn):返回字符串s1,s2..,sn中第一个不为缺失的字符。40.IFC(logical-expression,T,F):当逻辑语句为真时返回T,假或缺失返回F。41.REVERSE(s):返回字符串s反转的结果。二、日期与时间函数1.MDY(m,d,yr):生成yr年m月d日的SAS日期值。2.YEAR(date):由SAS日期值date得到年。3.MONTH(date):由SAS日期值date得到月。4.DAY(date):由SAS日期值date得到日。5.WEEKDAY(date):由SAS日期值date得到星期几。6.QTR(date):由SAS日期值date得到季度值。7.HMS(h,m,s):由小时h、分钟m、秒s生成SAS时间值。8.DHMS(d,h,m,s):由SAS日期值d、小时h、分钟m、秒s生成SAS日期时间值。9.DATEPART(dt):求SAS日期时间值dt的日期部分。10.INTNX(interval,from,n):计算从from开始经过n个interval间隔后的SAS日期。其中interval可以取'YEAR'、'QTR'、'MONTH'、'WEEK'、'DAY'等。例:INTNX('MONTH','16Dec1997'd,3)=1998年3月1日。11.INTCK(interval,from,to):计算从日期from到日期to中间经过的interval间隔的个数,其中interval取'MONTH'等。例:INTCK('YEAR','31Dec1996'd,'1Jan1998'd)=2函数计算1996年12月31日到1998年1月1日经过的年间隔的个数,结果得2,尽管这两个日期之间实际只隔1年。12.DATE()/TODAY()/DATETIME()/TIME():返回现在时间。13.WEEK(date):由SAS日期值date得到一年当中第几周。14.HOUR(date/time):由SAS日期值date或时间得到小时。15.TIMEPART(dt):求SAS日期时间值dt的时间部分。16.YRDIF(from,to,'basis'):计算从日期from到日期to中间经过的年份数,basis为计算年份标准,如'ACTUAL'/'ACT/365'/。17.HOLIDAY(holiday,year):计算year年某节日的日期,如:HOLIDAY(Christmas,2009)。三、数组函数1.DIM(x):求数组x第一维的元素的个数。2.DIMk(x):求数组x第k维的元素的个数。3.LBOUND(x):求数组x第一维的下界。4.HBOUND(x):求数组x第一维的上界。5.LBOUNDk(x):求数组x第k维的下界。6.HBOUNDk(x):求数组x第k维的上界。四、数学函数1.ABS(x):求x的绝对值。2.MAX(x1,x2,…,xn):求所有自变量中的最大值。3.MIN(x1,x2,…,xn):求所有自变量中的最小值。4.MOD(x,y):求x除以y的余数。5.SQRT(x):求x的平方根。6.ROUND(x,eps):求x按照eps指定的精度四舍五入后的结果。例:ROUND(5654.5654,0.01)=5654.57ROUND(5654.5654,10)=56507.CEIL(x):求大于等于x的最小整数。8.FLOOR(x):求小于等于x的最大整数。9.INT(x):取整数部分(x扔掉小数部分后的结果)。10.FUZZ(x):当x与其四舍五入整数值相差小于1E-12时取四舍五入。11.LOG(x):求x的自然对数。12.LOG10(x):求x的常用对数。13.EXP(x):指数函数。14.SIN(x),COS(x),TAN(x):求x的正弦、余弦、正切函数。15.ARSIN(y):计算函数y=sin(x)在区间的反函数,y取[-1,1]间值。16.ARCOS(y):计算函数y=cos(x)在的反函数,y取[-1,1]间值。17.ATAN(y):计算函数y=tan(x)在的反函数,y取间值。18.SINH(x),COSH(x),TANH(x):双曲正弦、余弦、正切。19.ERF(x):误差函数。20.GAMMA(x):伽玛函数。21.SIGN(x):符号函数。五、样本描述统计函数样本统计函数把输入的自变量作为一组样本,计算样本统计量。其调用格式为“函数名(自变量1,自变量,…,自变量n)”或者“函数名(OF变量名列表)”。比如SUM是求和函数,如果要求x1,x2,x3的和,可以用SUM(x1,x2,x3),也可以用SUM(OFx1-x3)。这些样本统计函数只对自变量中的非缺失值进行计算,比如求平均时把缺失值不计入内。1.MEAN:均值2.MAX:最大值3.MIN:最小值4.N:非缺失数据的个数5.NMISS:缺失数值的个数。6.SUM:求和7.VAR:方差8.STD:标准差9.STDERR:均值估计的标准误差,用STD/SQRT(N)计算10.CV:变异系数11.RANGE:极差12.CSS:离差平方和13.USS:平方和14.SKEWNESS:偏度15.KURTOSIS:峰度16.MEDIAN:中位数17.IQR:四分位数的间距18.SMALLEST(n):第n小的数19.LARGEST(n):第n大的数20.PCTL(percentile,x1-xn):percentile%分位数六、特殊函数1.LAGN(x):返回该自变量x前n条观测中该变量的值。2.DIFN(x):放回该自变量x的值减去前n条观测中该变量的值。3.INPUT(x,informat):将类型为字符的变量x转化为数字型变量或者自定义类型。4.PUT(x,format):将变量x转化为字符型或自定义输出格式变量。5.INPUTC(x,informat):将类型为字符的变量x转化为自定义字符格式。6.INPUTN(x,informat):将类型为字符的变量x转化为自定义数字型格式。7.PUTC(x,format):将字符型变量x转化输出格式或自定义输出格式。8.PUTN(x,format):将数字型变量x转化输出格式或自定义输出格式。自定义动态格式:变量Dummy根据不同情况,输出不同格式:valuewhich1='mmddyy10.'2='date9.';数据:whichoneDummy110/21/1980221OCT1980则Date=inputn(Dummy,put(Which_one,which.));会根据whichone的不同转化格式。9.CALLMISSING(ofx1-xn):将变量x1-xn转化为缺失值七、随机数函数1.均匀分布随机数UNIFORM(seed):seed必须是常数,为0,或5位、6位、7位的奇数。RANUNI(seed):seed为小于2^31-1的任意常数。在同一个数据步中对同一个随机数函数的多次调用将得到不同的结果,但不同数据步中从同一种子出发将得到相同的随机数序列。随机数种子如果取0或者负数则
本文标题:SAS常用函数大全
链接地址:https://www.777doc.com/doc-5580848 .html