2024年2月13日發(fā)(作者:我想念歌詞)

一、SAS語言簡介
SAS系統(tǒng)強大的數(shù)據(jù)管理能力、計算能力、分析能力依賴于作為其基礎(chǔ)的SAS語言。SAS語言是一個專用的數(shù)據(jù)管理與分析語言,它的數(shù)據(jù)管理功能類似于數(shù)據(jù)庫語言(如FoxPro),但又添加了一般高級程序設(shè)計語言的許多成分(如分支、循環(huán)、數(shù)組),以及專用于數(shù)據(jù)管理、統(tǒng)計計算的函數(shù)。SAS系統(tǒng)的數(shù)據(jù)管理、報表、圖形、統(tǒng)計分析等功能都可以用SAS語言程序來調(diào)用,只要指定要完成的任務(wù)就可以由SAS系統(tǒng)按照預(yù)先設(shè)計好的程序去進行,所以SAS 語言和FoxPro等一樣是一種第四代語言。這里簡單介紹SAS語言的基本成分與規(guī)則。
編輯本段二、SAS語言構(gòu)成
一SAS語句
SAS語言程序由數(shù)據(jù)步和過程步組成。數(shù)據(jù)步用來生成數(shù)據(jù)集、計算、整理數(shù)據(jù),過程步用來對數(shù)據(jù)進行分析、報告。SAS語言的基本單位是語句,每個SAS語句一般由一個關(guān)鍵字(如DATA,PROC,INPUT,CARDS,BY)開頭,包含SAS名字、特殊字符、運算符等,以分號結(jié)束。SAS關(guān)鍵字是用于SAS語句開頭的特殊單詞,SAS語句除了賦值、累加、注釋、空語句以外都以關(guān)鍵字開頭。SAS名字在SAS程序中標識各種SAS成分,如變量、數(shù)據(jù)集、數(shù)據(jù)庫,等等。SAS 名字由1到8個字母、數(shù)字、下劃線組成,第一個字符必須是字母或下劃線。SAS關(guān)鍵字和SAS 名字都不分大小寫。
二SAS表達式
SAS數(shù)據(jù)步程序中的計算用表達式完成。表達式把常量、變量、函數(shù)調(diào)用用運算符、括號連接起來得到一個計算結(jié)果。
常 量
SAS常量主要有數(shù)值型、字符型兩種,并且還提供了用于表達日期、時間的數(shù)據(jù)類型。
數(shù)值型:數(shù)值型常數(shù)可以用整數(shù)、定點實數(shù)、科學(xué)計數(shù)法實數(shù)表示。如:
12,-7.5,2.5E-10
字符型:字符型常數(shù)為兩邊用單撇號或兩邊用雙撇號包圍的若干字符。如:
'Beijing',"Li Ming","李明"
日期、時間:
日期型常數(shù)是在表示日期的字符串后加一個字母d大小寫均可),中間沒有空格。時間型常數(shù)是在表示時間的字符串后加一個字母t。日期時間型常數(shù)在表示日期時間的字符串后加字母dt。
日期型:'13JUL1998'd
時間型:'14:20't
日期時間型:'13JUL1998:14:20:32'dt
因為SAS是一種數(shù)據(jù)處理語言,而實際數(shù)據(jù)中經(jīng)常會遇到缺失值,比如沒有觀測到數(shù)值,被訪問人不肯答,等等。SAS中用一個單獨的小數(shù)點來表示缺失值常量。
變 量
SAS變量的基本類型有兩種:數(shù)值型和字符型。日期、時間等變量存為數(shù)值型(實際記錄為距1960/01/01的天數(shù))。SAS的數(shù)值型變量可以存儲任意整數(shù)、定點實數(shù)、浮點實數(shù),一般不關(guān)心其區(qū)別。數(shù)值型變量在數(shù)據(jù)集中的存貯一般使用8個字節(jié)。SAS的字符型變量缺省的長度是8個字符,但是如果在INPUT 語句中輸入字符型變量時指定了長度則不受此限制。可以用LENGTH語句直接指定變量長度。
LENGTH 語句一般應(yīng)出現(xiàn)在變量定義之前,格式為:
LENGTH 變量名 $ 長度;例如:
LENGTH name $ 20;
運算符
SAS運算符包括算術(shù)、比較、邏輯及其它的運算符。
算術(shù)運算符
算術(shù)運算符: + - * / **,運算優(yōu)先級按通常的優(yōu)先規(guī)則。
比較運算符
比較運算符用于比較常量、變量的值大小、相等,包括
= ^= ><>= <=
EQ NE GT LT GE LE IN
其中EQ等名字和=等特殊字符是同一運算符的等價寫法。比較運算符得到“真”或“假” 的結(jié)果,主要用于需要條件的分支、循環(huán)等語句中。
運算符IN是一個SAS特有的比較運算符,用來檢查某個變量的取值是否在一個給定列表中,例如:
prov in ('Beijing', 'Tianjin', 'Shanghai', Chongqing')
可以判斷變量prov的取值是否為四個直轄市之一。
邏輯運算符
邏輯運算符用來連接比較得到的結(jié)果以構(gòu)成復(fù)雜的條件,有三種邏輯運算符: &(AND) |(OR) ^(NOT) 。其中AND是&(與)的等價寫法,OR是|(或)的等價寫法,NOT是^(非)的等價寫法。
例如:
(salary>= 1000) AND (salary < 2000)
表示工資收入在1000-2000之間(不含2000)
(age <= 3) OR (x = '女')
表示三歲以下(含三歲)的嬰兒及婦女
NOT ((salary >= 1000) AND (salary < 2000))
表示工資收入不在1000-2000之間
復(fù)雜的邏輯表達式最好用括號表示其運算優(yōu)先級,以免誤記優(yōu)先規(guī)則并可利于閱讀程序。
其它的運算符
其它的運算符:
||(兩個連續(xù)的|號),兩個字符串連接
<> 取兩個運算值中較大一個的(比如3<>5結(jié)果為5)
>< 取兩個運算值中較小一個的 (比如3><5結(jié)果為3)
注意:<>符在有些語言中用作“不等于”比較算符,而SAS 中用法則較特殊。
三SAS程序規(guī)則
SAS程序由語句構(gòu)成。每個語句以分號結(jié)尾。在SAS程序中,一個語句可以寫到多行(不需任何續(xù)行標志),也可以在一行連續(xù)寫幾個語句。SAS語言中只要允許用一個空格的地方就可以加入任意多個空白(空格、制表符、回車),允許用空格的地方是名字周圍、運算符周圍。另外,SAS關(guān)鍵字和名字大小寫不分,但字符型數(shù)據(jù)值要區(qū)分大小寫,比如"Beijing" 和"BEIJING"被認為是不同的數(shù)據(jù)值。
在SAS程序中可以加入注釋,注釋的內(nèi)容用/*和*/在兩端界定。這種注釋可以出現(xiàn)在任何允許加入空格的位置,可以占多行。SAS中一般只把注釋單獨占一行或若干行,不把注釋與程序代碼放在同一行。注釋的另一個作用是把某些代碼暫時屏蔽使其不能運行。
SAS程序包括數(shù)據(jù)步和過程步兩種結(jié)構(gòu),每一個步是一段相對完整的可以單獨運行的程序。數(shù)據(jù)步用來生成、整理數(shù)據(jù)和自編程計算,過程步調(diào)用SAS已編好的處理過程對數(shù)據(jù)進行處理。自己用SAS編程序進行計算主要在數(shù)據(jù)步中進行。
SAS數(shù)據(jù)步以DATA語句開頭,以RUN語句結(jié)尾。DATA步中可以使用INPUT、CARDS、INFILE 、SET、MERGE等語句指定數(shù)據(jù)來源輸入數(shù)據(jù),也可以用賦值、分支、循環(huán)等編程結(jié)構(gòu)直接生成數(shù)據(jù)或?qū)斎氲臄?shù)據(jù)進行修改。
編輯本段三、SAS用作一般高級語言
SAS是一種專用的數(shù)據(jù)處理、統(tǒng)計計算語言,但是它也包含一般的高級語言編程能力并擴充了許多數(shù)學(xué)、統(tǒng)計等方面的函數(shù)。
SAS語言的編程計算能力主要由SAS數(shù)據(jù)步提供。DATA語句以關(guān)鍵字DATA 開頭,后面給出一個數(shù)據(jù)集名,例如:
data out1;
則在本數(shù)據(jù)步要生成的數(shù)據(jù)集,其名字為out1。我們也可以省略數(shù)據(jù)集名,這時SAS自動生成一個臨時數(shù)據(jù)集名。也可以使用特殊名字_NULL_ ,表示本數(shù)據(jù)步不生成數(shù)據(jù)集。
一賦值語句
在SAS中用賦值語句計算一個值并存放到變量中。
格式為
變量名 = 表達式;
例如:
avg = (math + chine)/2;
isfem = (x='女');
y=sin(x)**2;
newv = .;
其中第一個賦值語句用一個公式計算平均分數(shù)。第二個生成一個取值為0或1的變量,性別為女時為1,否則為0。第三個使用了正弦函數(shù)和乘方運算。第四個給變量賦了缺失值。
二輸出語句
SAS數(shù)據(jù)步的輸出一般是數(shù)據(jù)集,用賦值語句計算的結(jié)果會自動寫入數(shù)據(jù)集。SAS也提供了一個PUT語句用于立即打印輸出結(jié)果。
PUT語句的語法:
PUT 輸出項表
輸出項表中只能是變量或字符串,項間用空格隔開。如:
data;
x=0.5;
y=sin(x);
put 'Sine function value of ' x 'is ' y;
run;
結(jié)果將在運行記錄窗口顯示一行
Sine function value of 0.5 is 0.4794255386
PUT說明
⒈在PUT語句中,若在變量名后加“=”,則指定輸出項可以顯示帶有變量名的輸出結(jié)果。
比如把上程序中的PUT語句改為
put x= y=;
則結(jié)果在LOG窗口顯示為
X=0.5 Y=0.4794255386
⒉指定變量輸出項的具體列位置及小數(shù)位數(shù)
絕對位置格式:
變量 起始列-結(jié)束列.小數(shù)位數(shù)
比如,
put x 10-20 .6 y 30-40 .6;
指定把X數(shù)值顯示在第10-20列,保留6位小數(shù),把
Y數(shù)值顯示在第30-40列,保留6位小數(shù)。
在指定的列位置內(nèi),數(shù)值型數(shù)據(jù)靠右對齊,字符型
數(shù)據(jù)靠左對齊。變量為整數(shù)值或者字符型則不指定
小數(shù)位數(shù)。
相對位置格式:
變量 寬度.小數(shù)位數(shù)(用于數(shù)值型)
變量 $寬度.(用于字符型)
如:put x 20.8 y 20.8; 使X占用第1-20列,8位小數(shù),右對齊;Y占用第21-40列,8位小數(shù),右對齊。
而put name $10.;使name占用10列。
輸出占位不滿指定寬度時,數(shù)值型數(shù)據(jù)向右對齊,字符型數(shù)據(jù)向左對齊。
⒊如果希望PUT語句的輸出不產(chǎn)生換行,使下一個PUT的結(jié)果可以顯示在同一行,只要在PUT 語句結(jié)尾處加一個@符。
PUT語句的輸出結(jié)果缺省情況下被送到運行記錄窗口。若在PUT語句之前用FILE語句可以改變PUT語句的輸出目的地。如,在PUT語句之前用file
print;可以把PUT語句的輸出轉(zhuǎn)向到輸出窗口。在FILE語句中指定一個包含文件名的字符串可以把PUT語句的輸出轉(zhuǎn)向到此文件中。比如file
'';輸出文件把后續(xù)的PUT語句輸出轉(zhuǎn)向到當前工作目錄下的文件“”中,生成 。注意當前工作目錄在SAS狀態(tài)欄的右方顯示,雙擊可以更改。文件名也可以指定全路徑,比如“C:”。
三分支結(jié)構(gòu)
⒈if...l 結(jié)構(gòu)
⒉SELECT結(jié)構(gòu)
1. if...l 結(jié)構(gòu)
格式為:
IF 條件 THEN 語句;
ELSE 語句;
例: data temp1
input x @@;
if x>0 then put x '是正數(shù)';
el put x '是負數(shù)';
cards;
1 2 -3 4 -5
;
run;
有時我們在條件成立時需要進行的操作無法用一個語句完成,這時可以使用SAS提供的復(fù)合語句功能。例:
data;
input x@@; /*不分行符@@的使用:每讀入一天記錄后,數(shù)據(jù)指針保持原位不換行,
繼續(xù)讀下一條記錄*/
if x>0 then do;
y=2*x;
put 'f(' x ')=' y;
end;
el put 'Data Error!';
cards;
1 2 -3 4 -5
;
run;
如果當條件不成立時,不進行什么操作,可以不使用ELSE及其后面的語句。
結(jié)構(gòu)
格式一:
SELECT (選擇表達式);
WHEN(值列表) 語句;
WHEN(值列表) 語句;
??
OTHERWISE 語句;
END;
功能及流程:
執(zhí)行SELECT結(jié)構(gòu)時,先計算出選擇表達式和值列表中的所有值,然后把選擇表達式值由前向后與值列表中的值相比,發(fā)現(xiàn)相等值則執(zhí)行對應(yīng)的語句,然后退出SELECT結(jié)構(gòu)(不再查看后面的值列表)。如果選擇表達式的值不等于任何值列表中的值則執(zhí)行OTHERWISE對應(yīng)的語句,這種情況下沒有OTHERWISE語句會出錯。
例:
DATA ;
INPUT month $ @@;
put month @;
SELECT(month);
WHEN('Feb', 'Mar', 'Apr') put '春天';
WHEN('May', 'Jun', 'Jul') put '夏天';
OTHERWISE put '秋天或冬天';
END;
CARDS;
Mar Jun oct
;
run;
格式二:
SELECT;
WHEN(條件) 語句;
WHEN(條件) 語句;
??
OTHERWISE 語句;
END;
這種SELECT語句沒有選擇表達式,而是在每
一個WHEN語句指定一個條件(邏輯表達式),
執(zhí)行第一個滿足條件的WHEN后的語句。如果所
有條件都不滿足則執(zhí)行OTHERWISE后的語句。
例:
data;
input age @@;
put age @;
SELECT;
WHEN(age<=12) put '少年';
WHEN(age<35) put '青年';
OTHERWISE put '中老年';
END;
cards;
10 30 50
;
run;
四循環(huán)結(jié)構(gòu)
⒈計數(shù)DO循環(huán)
⒉當型循環(huán)
⒊直到型循環(huán)
⒈計數(shù)DO循環(huán)
計數(shù)DO循環(huán)的格式:
DO 計數(shù)變量 = 起始值 TO 結(jié)束值 BY 步長;
循環(huán)體語句??
END;
這種結(jié)構(gòu)與BASIC中計數(shù)循環(huán)很類似,功能也相當,只是在SAS中是以關(guān)鍵字DO開頭(不是FOR),另外步長用BY引導(dǎo)(不是STEP),而結(jié)構(gòu)以END結(jié)束(而不是NEXT)。
其功能與流程:
程序先把計數(shù)變量賦值為起始值,如果此值小于等于結(jié)束值則執(zhí)行循環(huán)體語句,然后把計數(shù)變量加上步長,再判斷它是否小于等于結(jié)束值,如果是則繼續(xù)執(zhí)行循環(huán)體,直到計數(shù)變量的值大于結(jié)束值為止。上述結(jié)構(gòu)中“BY 步長”可以省略,這時步長為1。如果步長取負值,則繼續(xù)循環(huán)的條件是計數(shù)變量大于等于結(jié)束值。
計數(shù)DO循環(huán)舉例
data;
sum=0;
DO i = 1 TO 10 ;
sum +i;
/*此處sum+i等價于sum=sum+i*/
END;
PUT sum=;
run;
在循環(huán)體中可以用LEAVE語句跳出循環(huán)(功能與C語言的break語句相當),如:
data;
n=13;
flag=1;
DO i = 2 TO n/2 ;
if mod(n,i)=0 then do;
flag=0;
leave;
end;
END;
if flag=1 then
put n "是素數(shù)";
el
put n "不是素數(shù)";
run;
⒉當型循環(huán)
當型循環(huán)的格式:
DO WHILE(循環(huán)繼續(xù)條件);
循環(huán)體語句??
END;
程序先判斷循環(huán)繼續(xù)條件是否成立,成立時執(zhí)行循環(huán)體語句,再判斷循環(huán)繼續(xù)條件,如此重復(fù),直到循環(huán)繼續(xù)條件不再成立。
data;
x=243;
y=63;
z=mod(x,y);
DO WHILE (z ^= 0);
x=y;
y=z;
z= mod(x,y);
END;
put y;
run;
⒊直到型循環(huán)
直到型循環(huán)的格式:
DO UNTIL (循環(huán)退出條件);
循環(huán)體語句??
END;
程序先判斷循環(huán)退出條件是否成立,成立則結(jié)束循環(huán),否則繼續(xù)。例:
data;
n=0;
do until (n>=5);
n+1;
put n=;
end;
run;
編輯本段四、SAS常用函數(shù)
⒈算術(shù)函數(shù)(Arithmetic Functions)
⒉數(shù)學(xué)函數(shù)(Mathematical Functions)
⒊截斷函數(shù)(Truncation Functions)
⒋三角和曲線函數(shù)(Trigonometric and Hyperbolic Functions)
⒌字符函數(shù)(Character Functions)
⒍日期和時間函數(shù)(Date and Time Functions)
⒎概率與密度函數(shù)(Probability and Density Functions)
⒏分位數(shù)函數(shù)(Quantile Functions)
⒐隨機數(shù)函數(shù)(Random Number Functions)
⒑樣本統(tǒng)計函數(shù)(Sample Statistics Funtions)
⒈算術(shù)函數(shù)(Arithmetic Functions)
ABS(x) :求x的絕對值。 例如ABS(-56.3)=56.3 。
MAX(x1,x2,?,xn) :求所有自變量中的最大一個。 例如MAX(52,15,67,89)=89 。
MIN(x1,x2,?,xn) :求所有自變量中的最小一個。例如MIN(52,15,67,89)=15 。
MOD(x,y) :求x除以y的余數(shù)。 例如MOD(24,3)=0 。
SIGN(x) :計算x的符號,結(jié)果為1、-1、0。例如SIGN(-5)=-1,SIGN(20)=1,SIGN(0)=0。
SQRT(x) :求x的平方根。 例如SQRT(225)=15 。
⒉數(shù)學(xué)函數(shù)(Mathematical Functions)
ERF(X):誤差函數(shù) 。
EXP(X):指數(shù)函數(shù) 。
GAMMA(X):計算 的值。
LOG(X):計算x的自然對數(shù)。
LOG10(X):計算x的以10為底的對數(shù)。
LGAMMA(X):計算函數(shù)的自然對數(shù)。
⒊截斷函數(shù)(Truncation Functions)
CEIL(X):計算x的最小整數(shù),當x為整數(shù)時就是x本身,否則為x右側(cè)最近的整數(shù)。
例如CEIL(-134.45)=-134,CEIL(34.45)=35,CEIL(78)=78。
FLOOR(X):計算小于或等于x的最大整數(shù),例如FLOOR(-134.45)=-135,FLOOR(34.45)=34。
INT(X):求x舍掉小數(shù)部分后的整數(shù)部分。例如INT(-134.45)=-134,INT(34.45)=34。
ROUND(x,unit):計算x按照unit指定的精度四舍五入后的結(jié)果,例如ROUND(134.4567,0.01)結(jié)果為134.46,ROUND(3678.2398,10)結(jié)果為3680。
⒋三角和曲線函數(shù)(Trigonometric and Hyperbolic Functions)
ARCOS(y):計算反余弦函數(shù)。
ARSIN(y):計算反正弦函數(shù)。
ATAN(y):計算反正切函數(shù)。
COS(X):計算x的余弦函數(shù)。
SIN(X):計算x的正弦函數(shù)
⒌字符函數(shù)(Character Functions)
COMPBL(S):將字符串S中的多余空格去掉。
COMPRESS(S,S1):將字符串S中包含的所有字符串S1去掉。
INDEX(S,S1):查找字符串S1在S中的位置。如果S中不包含S1則返回0。
LOWCASE(S):把字符串S中所有大寫字母轉(zhuǎn)換為小寫字母。
UPCASE(S):把字符串S中所有小寫字母轉(zhuǎn)換為大寫字母。
RANK(S):求字符串S的ASCII碼值。
REPEAT(S,N):將字符串S重復(fù)N次。
SUBSTR(S,N,LONG):字符串S中的第N個字符開始抽取long個字符長的子串。
TRANWRD(S,S1,S2):將字符串S中的所有字符串S1替換成字符串S2。
⒍日期和時間函數(shù)(Date and Time Functions)
常用日期和時間函數(shù)有:
DATEIF(sdate,edate,basis):計算兩個日期之間相距的天數(shù),basis指定日期格式。
DATE:計算當前SAS系統(tǒng)的日期。
DAY(date):有SAS日期值date得到是幾日。
DHMS(date,hour,minute,cond):有日期、小時、分鐘、秒得到SAS日期和時間值。
MDY(month,day,year):生成月日年的SAS日期值。
MONTH(date):有SAS日期值date得到月。
QTR(date):有SAS日期值date得到季度值。
WEEKDAY(day):有SAS日期值date得到星期幾。
YEAR(DATE):有SAS日期值date得到年。
其它日期和時間函數(shù)參見SAS系統(tǒng)的幫助信息。
⒎概率與密度函數(shù)(Probability and Density Functions)
作為一個統(tǒng)計計算語言,SAS提供了多種概率分布函數(shù)。分布密度、概率、累積分布函數(shù)等可以通過集中統(tǒng)一的格式調(diào)用,格式為:
CDF(‘dist’,quantile,parm-1,?,parm-k):計算累計分布函數(shù)。Dist為分布名稱,quntile為分為數(shù),隨后是相關(guān)參數(shù)。
PDF|PMF(‘dist’,quantile,parm-1,?,parm-k):計算概率密度函數(shù)。Dist為分布名稱,quntile為分為數(shù),隨后是相關(guān)參數(shù)。
LOGPDF|LOGPMF(‘dist’,quantile,parm-1,?,parm-k):計算概率密度函數(shù)的對數(shù)值。Dist為分布名稱,quntile為分為數(shù),隨后是相關(guān)參數(shù)。
LOGSDF(‘dist’,quantile,parm-1,?,parm-k):計算生存函數(shù)的對數(shù)值。Dist為分布名稱,quntile為分為數(shù),隨后是相關(guān)參數(shù)。
PROBCHI(x,df<,nc>):計算卡方分布的概率值。可選參數(shù)nc為非中心參數(shù)。
PROBF(x,ndf,ddf<,nc>):計算F分布的概率值。可選參數(shù)nc為非中心參數(shù)。
PROBGAM(x,a):計算伽馬分布的概率值。
PROBNORM(x):計算標準正態(tài)分布的概率值。
⒏分位數(shù)函數(shù)(Quantile Functions)
分位數(shù)函數(shù)是概率分布函數(shù)的反函數(shù)。其自變量在0-1之間取值。分位數(shù)函數(shù)計算的是分布的左側(cè)分位數(shù)。
BETAINV(p,a,b):計算參數(shù)為(a, b)的 分布的p分位數(shù)。
CINV(p, df<,nc>):計算自由度為df的卡方分布p分位數(shù)。可選參數(shù)nc為非中心參數(shù)。
FINV(p, ndf, ddf<,nc>):計算F (ndf , ddf)分布的p分位數(shù)。可選參數(shù)nc為非中心參數(shù)。
GAMINV(p, a):計算參數(shù)為a的伽馬分布的p分位數(shù)。
PROBIT(p):計算標準正態(tài)分布的p分位數(shù)。
TINV(p, df>,nc<):計算自由度為df的t分布的p分位數(shù)。可選參數(shù)nc為非中心參數(shù)。
⒐隨機數(shù)函數(shù)(Random Number Functions)
SAS提供了常見分布的偽隨機數(shù)生成函數(shù)。
NORMAL(ed):產(chǎn)生服從正態(tài)分布的隨機數(shù)。ed為0,或5位、6位、7位的奇數(shù)。
RANNOR (ed):產(chǎn)生服從正態(tài)分布的隨機數(shù)。ed為任意數(shù)值常數(shù)。
RANBIN(ed,n, p):產(chǎn)生參數(shù)為(n, p)的二項分布隨機數(shù),ed為任意數(shù)值。
均勻分布隨機數(shù)。系統(tǒng)提供兩個均勻分布隨機數(shù)函數(shù):
UNIFORM(ed):產(chǎn)生服從均勻分布的隨機數(shù)。參數(shù)ed必須是常數(shù),為0,或5位、6位、7位的奇數(shù)。
RANUNI (ed):產(chǎn)生服從均勻分布的隨機數(shù)。參數(shù)ed為小于231-1的任意常數(shù)。在同一個數(shù)據(jù)步中對同一個隨機數(shù)函數(shù)的多次調(diào)用將得到不同的結(jié)果,但不同數(shù)據(jù)步中從同一種子出發(fā)將得到相同的隨機數(shù)序列。隨機數(shù)種子如果取0或者負數(shù),則種子采用系統(tǒng)日期時間。
RANEXP(ed):產(chǎn)生服從指數(shù)分布的隨機數(shù)。ed為任意數(shù)值,產(chǎn)生參數(shù)為1的指數(shù)分布的隨機數(shù)。
RANPOI(ed,lambda):產(chǎn)生參數(shù)為lambda>0的泊松分布隨機數(shù),ed為任意數(shù)值。
RANTBL(ed,P1,?,Pn)生成取1,2,?,n的概率分別為P1,?,Pn的離散分布隨機數(shù)。
⒑樣本統(tǒng)計函數(shù)(Sample Statistics Funtions)
樣本統(tǒng)計函數(shù)把輸人的自變量作為一組樣本,計算樣本統(tǒng)計量。其調(diào)用格式為“函數(shù)名(自變量1,自變量2,?,自變量n)”或者“函數(shù)名(OF變量名列表)”。比如SUM是求和函數(shù),如果要求x1、x2, x3的和,則可以用SUM(xl,x2,x3),也可以用SUM(of x1-x3)。
各樣本統(tǒng)計函數(shù)為:
CSS:離差平方和
CV:變異系數(shù)
KURTOSIS:峰度
MEAN:均值
MAX:最大值
MIN:最小值
N:非缺失數(shù)據(jù)的個數(shù)
NMISS:缺失數(shù)值的個數(shù)
RANGE:極差=MAX - MIN
SKEWNESS:偏度
STD DEV:標準差
STDERR:均值估計的標準誤,用STD/SQRT(N)計算
SUM:求和
USS:平方和
VAR:方差
本文發(fā)布于:2024-02-13 21:49:40,感謝您對本站的認可!
本文鏈接:http://m.newhan.cn/zhishi/a/1707832180266045.html
版權(quán)聲明:本站內(nèi)容均來自互聯(lián)網(wǎng),僅供演示用,請勿用于商業(yè)和其他非法用途。如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除。
本文word下載地址:SAS語言介紹.doc
本文 PDF 下載地址:SAS語言介紹.pdf
| 留言與評論(共有 0 條評論) |