資源描述:
《sas function(函數(shù))》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、SAS的函數(shù)對重要的函數(shù)加以介紹SAS提供了比一般程序設計語言多幾倍的標準函數(shù)可以直接用在數(shù)據(jù)步的計算中,其中包括所有語言都有的數(shù)學函數(shù)、字符串函數(shù),還包括特有的統(tǒng)計分布函數(shù)、分位數(shù)函數(shù)、隨機數(shù)函數(shù)、日期時間函數(shù)、財政金融函數(shù),等等。這些函數(shù)的調(diào)用方法類似其它語言,比如求x1,x2,x3三個自變量的和可以用函數(shù)SUM(x1,x2,x3)。另外,SAS還提供了函數(shù)調(diào)用的另一種語法以便于把多個數(shù)據(jù)集變量作為函數(shù)自變量,其格式為“函數(shù)名(OF變量名列表)”,其中變量名列表可以是任何合法的變量名列表,比如x1,x2,x3的和等價地可以用SUM(OFx1x2x3)或SUM(OFx1-x3)表示。注意兩
2、種寫法不能混在一起,比如SUM(OFx1,x2,x3)和SUM(x1-x3)都是錯的。本小節(jié)對重要的函數(shù)加以介紹,其它詳見《SAS軟件:BaseSAS軟件使用手冊》(高惠璇等編譯,中國統(tǒng)計出版社出版)?!∫弧?shù)學函數(shù)ABS(x)求x的絕對值。MAX(x1,x2,…,xn)求所有自變量中的最大一個。MIN(x1,x2,…,xn)求所有自變量中的最小一個。MOD(x,y)求x除以y的余數(shù)。SQRT(x)求x的平方根。ROUND(x,eps)求x按照eps指定的精度四舍五入后的結果,比如ROUND(5654.5654,0.01)結果為5654.57,ROUND(5654.5654,10)結果為56
3、50。CEIL(x)求大于等于x的最小整數(shù)。當x為整數(shù)時就是x本身,否則為x右邊最近的整數(shù)。FLOOR(x)求小于等于x的最大整數(shù)。當x為整數(shù)時就是x本身,否則為x左邊最近的整數(shù)。INT(x)求x扔掉小數(shù)部分后的結果。FUZZ(x)當x與其四舍五入整數(shù)值相差小于1E-12時取四舍五入。LOG(x)求x的自然對數(shù)。LOG10(x)求x的常用對數(shù)。EXP(x)指數(shù)函數(shù)。SIN(x),COS(x),TAN(x)求x的正弦、余弦、正切函數(shù)。ARSIN(y)計算函數(shù)y=sin(x)在區(qū)間的反函數(shù),y取[-1,1]間值。ARCOS(y)計算函數(shù)y=cos(x)在的反函數(shù),y取[-1,1]間值。ATAN(
4、y)計算函數(shù)y=tan(x)在的反函數(shù),y取間值。SINH(x),COSH(x),TANH(x)雙曲正弦、余弦、正切ERF(x)誤差函數(shù)GAMMA(x)完全函數(shù)此外還有符號函數(shù)SIGN,函數(shù)一階導數(shù)函數(shù)DIGAMMA,二階導數(shù)函數(shù)TRIGAMMA,誤差函數(shù)余函數(shù)ERFC,函數(shù)自然對數(shù)LGAMMA,ORDINAL函數(shù),AIRY函數(shù),DAIRY函數(shù),Bessel函數(shù)JBESSEL,修正的Bessel函數(shù)IBESSEL,等等。二、數(shù)組函數(shù)數(shù)組函數(shù)計算數(shù)組的維數(shù)、上下界,有利于寫出可移植的程序。數(shù)組函數(shù)包括:DIM(x)求數(shù)組x第一維的元素的個數(shù)(注意當下界為1時元素個數(shù)與上界相同,否則元素個數(shù)不一
5、定與上界相同)。DIMk(x)求數(shù)組x第k維的元素的個數(shù)。LBOUND(x)求數(shù)組x第一維的下界。HBOUND(x)求數(shù)組x第一維的上界。LBOUNDk(x)求數(shù)組x第k維的下界。HBOUNDk(x)求數(shù)組x第k維的上界?!∪?、字符函數(shù)較重要的字符函數(shù)有:TRIM(s)返回去掉字符串s的尾隨空格的結果。UPCASE(s)把字符串s中所有小寫字母轉換為大寫字母后的結果。LOWCASE(s)把字符串s中所有大寫字母轉換為小寫字母后的結果。INDEX(s,s1)查找s1在s中出現(xiàn)的位置。找不到時返回0。RANK(s)字符s的ASCII碼值。BYTE(n)第n個ASCII碼值的對應字符。REPEAT
6、(s,n)字符表達式s重復n次。SUBSTR(s,p,n)從字符串s中的第p個字符開始抽取n個字符長的子串TRANWRD(s,s1,s2)從字符串s中把所有字符串s1替換成字符串s2后的結果。其它字符函數(shù)還有COLLATE,COMPRESS,INDEXC,LEFT,LENGTH,REVERSE,RIGHT,SCAN,TRANSLATE,VERIFY,COMPBL,DEQUOTE,INDEXW,QUOTE,SOUNDEX,TRIMN,INDEXW?!∷摹⑷掌诤蜁r間函數(shù)常用日期和時間函數(shù)有:MDY(m,d,yr)生成yr年m月d日的SAS日期值YEAR(date)由SAS日期值date得到年MO
7、NTH(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(i