版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、1,推薦教材,1.SAS系統(tǒng)的幫助以及在線文檔,都是學(xué)習(xí)SAS的很好的工具。 http://support.sas.com/documentation/onlinedoc/sas9doc.html2.《SAS系統(tǒng)Base SAS 軟件使用手冊》高惠璇等編譯,中國統(tǒng)計出版社1997 3.《SAS 系統(tǒng)SAS/STAT軟件使用手冊》高惠璇等編譯,中國統(tǒng)計出版社1997 4. 《實用統(tǒng)計方法與SAS系統(tǒng)》高惠璇 北京大學(xué)出版社2001,
2、2,數(shù)據(jù)類型,橫截面數(shù)據(jù)集(cross-sectional data set) 時間序列數(shù)據(jù)集(time series data set)混合橫截面數(shù)據(jù)集(pooled cross section data set)綜列數(shù)據(jù)集(panel data set)離散數(shù)據(jù)(discrete data)持續(xù)數(shù)據(jù)(survival data),3,SAS模塊,Base SAS: 1、數(shù)據(jù)管理功能2、基礎(chǔ)統(tǒng)計計算功能 3、報
3、表生成和圖形顯示功能,4,SAS/STAT 統(tǒng)計分析SAS/INSIGHT 數(shù)據(jù)探索SAS/ASSIST 面向任務(wù)的易學(xué)易用模塊SAS/ETS 時間序列處理SAS/OR 運籌學(xué)和工程管理SAS/QC 質(zhì)量控制SAS/IML 矩陣運算SAS/GRAPH 繪圖SAS/AF 面向?qū)ο缶幊?OOP)的應(yīng)用開發(fā)工具,拓展SAS的功能,5,SAS/EIS 面向?qū)ο缶幊痰拈_發(fā)工具,用于開發(fā)企業(yè)信息系統(tǒng)SAS/ACCESS 數(shù)據(jù)訪問
4、SAS/TOOLKIT 擴充工具,把用其他軟件編寫的程序轉(zhuǎn)化成SAS的組成部分SAS/Warehouse Administrator 數(shù)據(jù)倉庫管理SAS/Enterprise Miner 數(shù)據(jù)挖掘SAS/Text Miner 文本挖掘SAS/SHARE 數(shù)據(jù)庫的并發(fā)式控制專門軟件SAS/CONNECT 使各平臺SAS系統(tǒng)進行分布式處理,從而有效利用各平臺機器資源,6,SAS/GIS 地理信息系統(tǒng)與空間數(shù)據(jù)的顯示分析SAS/
5、SPECTRAVIEW 數(shù)據(jù)可視化分析工具,用幾何成像的方式來分析多維數(shù)據(jù)SAS/Intrnet 提供構(gòu)建基于SAS的企業(yè)內(nèi)部網(wǎng)絡(luò)支持SAS/FSP 快速數(shù)據(jù)處理的交互式菜單系統(tǒng)SAS/CALC 功能完善的多維電子表格軟件SAS/ENGLISH 提供利用自然英語獲取信息的能力,7,SAS/SECURE 網(wǎng)絡(luò)傳輸加密SAS/OLAP SERVER 多維數(shù)據(jù)存儲及匯總結(jié)果呈現(xiàn)SAS/GENETICS SAS公司的第一個科學(xué)研究應(yīng)
6、用軟件,應(yīng)用于遺傳學(xué),有5個分析過程SAS/High-Performance Forecasting:提供快速高效的預(yù)測結(jié)果SAS/C, SAS/C++ 針對IBM大型機的開發(fā)工具SAS/LAB 向?qū)降臄?shù)據(jù)分析軟件,特別針對day-to-day類型數(shù)據(jù),8,SAS/Insight模塊,1、界面介紹2、Fill values 功能3、Extract 功能4、Edit/windows/tool菜單使數(shù)據(jù)探索色彩繽紛(注意
7、選項設(shè)置)5、打開分布、擬合、多元等的窗口之后主菜單Tables、Graphs、Curves菜單才被開放。Fly,insurance數(shù)據(jù)集示例,9,Insight模塊,其他功能:1、分布(輸出大多數(shù)常用的統(tǒng)計量)2、擬合(回歸分析)3、多元(方差分析),10,SAS程序的書寫格式,1、SAS程序由語句組成,語句用分號結(jié)束。2、 SAS語句可以從某一行的任意位置開始; 3、幾個SAS語句可以寫在同一行上,但每句要使用分號,1
8、1,SAS程序的書寫格式,4、一個語句也可以寫成幾行,只要語句中的單詞不被斷開就可以。在一個語句中各個單詞之間至少要有一個空格。5、SAS程序中一般不區(qū)分大小寫(字符串中要區(qū)分大小寫)6、用 /*注釋的內(nèi)容*/ 來對程序進行注釋,12,SAS程序的結(jié)構(gòu),SAS數(shù)據(jù)集樣本(觀測、記錄)、變量(字段、域)、表(數(shù)據(jù)集)、 數(shù)據(jù)庫許多SAS語句都是以關(guān)鍵詞開始并用它識別語句的類型(如data、input、proc)絕大部分的SAS語
9、句都可分為兩步:DATA步和PROC步,13,SAS的變量及格式,變量屬性(名稱、類型、長度、輸入格式、輸出格式、標(biāo)簽)類型:數(shù)字型、字符串型輸入格式:數(shù)據(jù)被SAS讀取的格式輸出格式:數(shù)據(jù)呈現(xiàn)給人們的格式,14,SAS程序第二例,SAS/orange.sas輸入數(shù)據(jù)-形成數(shù)據(jù)集-排序-打印顯示,15,SAS文件及命名,1、SAS數(shù)據(jù)集文件(后綴為sas7bdat)2、SAS程序文件(后綴為sas)3、SAS日志文件(后綴為
10、log)4、SAS輸出文件(后綴為list),16,SAS文件及命名,臨時數(shù)據(jù)集和永久數(shù)據(jù)集SAS文件的2級命名方式:目錄.文件名work目錄和其他目錄使用Libname語句創(chuàng)建永久數(shù)據(jù)集,libname 自建目錄名 ‘目錄地址’;libname例,17,建立SAS數(shù)據(jù)集的5種方法,1、data步自己輸入數(shù)據(jù)建立。Orange例2、data步利用set 語句建立。Set例3、從外部調(diào)入。Infile例4、利用“導(dǎo)入數(shù)據(jù)
11、”功能建立。Id.xls例、data.txt例5、利用EFI(external file interface)功能導(dǎo)入。Column.dat例、tests.dat例、comma.dat例,Analyst分析家模塊,1、界面介紹2、瀏覽與編輯模式3、生成示例數(shù)據(jù)與抽樣4、程序清單5、假設(shè)檢驗,18,19,SAS運算符(operator例),算術(shù)運算符:+?。? / **比較算符:=(EQ) ^=(
12、NE) >(GT) =(GE) (最大值) ||(?。?連接),20,字符的比較(operator_char例),1、按機器使用的字符排列次序(ASCⅡ或Unicode)從左到右被比較。2、兩個不等長的字符串被比較時,系統(tǒng)在較短的字符串后自動添上空格3、在比較符后加冒號,則只比較首字母,21,運算次序一,在括弧里的表達式先計算第一級:** (+?。┣熬Y?。蕖?gt;第二級
13、:* /第三級:+?。谒募墸簗|第五級:其余比較算符第六級:&第七級:|,22,運算次序二,對于相同優(yōu)先級的算符,左邊的運算先做。但有兩個例外:1.對最高優(yōu)先級,右邊的運算先做2.當(dāng)兩個比較算符圍著一個量時,這個表達式看成是有一個and 出現(xiàn)一樣被計算。如:12<age< 20,等價于:12<age & age<20,23,SAS函數(shù)一(部分),數(shù)學(xué)函數(shù):abs()、max ()、min ()
14、、mod (x, y)、sign (x)、sqrt (x)、 sum ()、 mean ()、exp (x) 、log (x)、log10 (x)、log2(x) 、sin (x)、arsin (x)截取函數(shù):ceil (x)、floor (x)、int (x)、round (x,n)字符函數(shù):index (S, S1)、substr (S , p, n)、scan(S2,n)、upcase(S)、compress(S,S1),
15、24,SAS函數(shù)二(部分),SAS系統(tǒng)存貯日期值為1960年1月1日到指定日期之間的天數(shù)SAS存貯時間值為從午夜開始到指定時間的秒數(shù)日期時間值存貯為1960年1月1日午夜到指定日期時間之間的秒數(shù)日期時間函數(shù):weekday ( )、day()、month()、qtr()、year(),,25,SAS函數(shù)三(部分),概率統(tǒng)計函數(shù):probnorm (x)n (of X1-Xn)、nmiss (of X1-Xn),var (of
16、 x1-xn)、std (of x1-xn)隨機數(shù)函數(shù):rannor (seed)、ranuni (seed)Functions例,26,DATA步,文件操作語句運行語句控制語句信息語句,27,DATA步流程,DATA語句標(biāo)志了數(shù)據(jù)步開始,并指定了數(shù)據(jù)步結(jié)束時要生成的數(shù)據(jù)集名字。每次讀入一行數(shù)據(jù),讀入后執(zhí)行數(shù)據(jù)步中的其它語句,循環(huán)數(shù)據(jù)步讀取整個數(shù)據(jù)。_N_變量表示DATA步已經(jīng)執(zhí)行的次數(shù)_error_變量值為1時表示程
17、序出錯Flow例,,,28,DATA步流程(Flow1例)(*),讀外部數(shù)據(jù)時,數(shù)據(jù)步迭代(即每一次)的開始把變量的值置為缺失值,有幾種情況例外:1、retain語句提到的變量2、sum語句中創(chuàng)建的變量3、數(shù)組_temporary_中的數(shù)據(jù)元4、file和infile語句選項中創(chuàng)建的變量5、自動變量讀sas數(shù)據(jù)集時,只在第一次迭代時把變量值置為缺失,以后變量保留其值直至新值寫入,29,文件操作語句DATA語句,DATA語
18、句的選項DROP選項(不列出某些變量)KEEP選項(列出某些變量)LABEL選項(給數(shù)據(jù)集加標(biāo)簽)RENAME選項(重命名變量)Data例,30,DATA語句,數(shù)據(jù)集名字:(data2例)1、data語句后無數(shù)據(jù)集名字,則自動生成 data1, data2等為數(shù)據(jù)集名字,相當(dāng)于data _data_;2、data _null_;不產(chǎn)生實際的數(shù)據(jù)集,只是把內(nèi)容暫存于內(nèi)存,以供put語句等讀取結(jié)果,可以節(jié)約計算機資源3、da
19、ta _last_;以最近產(chǎn)生的數(shù)據(jù)集命名并取代其內(nèi)容。,31,Input語句,分組格式:input (g1-g5) (3*7.2 , 2*5.2); input (a b) ( $5.)input (a b) ($ , 5.)@@-無需分行而按變量連貫讀數(shù)據(jù)@-固定該數(shù)據(jù)行;用于需要多個input語句同時讀取一行數(shù)據(jù)。input@@例,Input@例,32,Input語句,利用@n +n #n
20、 進行指針控制input1例,33,Input語句,幾個特殊符號的用法(: & ~): 讀值時第一次遇到分隔符、或是數(shù)據(jù)行末尾、或是讀滿列數(shù)而結(jié)束& 字符型輸入值可以嵌有一個或幾個空格~ 字符型輸入值保留引號(與infile 語句中選項dsd一起使用才有效)Input2例,34,Cards語句,Cards語句與datalines語句可以通用如果輸入數(shù)據(jù)中含有分號,可用cards4語句或datalines4語句,同
21、時,數(shù)據(jù)結(jié)尾用4個分號表示數(shù)據(jù)輸入結(jié)束Cards4例,35,Put 語句,Put語句負(fù)責(zé)在log窗口輸出一些結(jié)果,file print選項可把輸出轉(zhuǎn)移到output窗口Put _infile_ (輸出最新的數(shù)據(jù)行到SAS log 窗口)Put _all_ (輸出所有變量的值)Put _page_ (輸出新頁)Put例、put1例,36,File 語句,File print 把put語句產(chǎn)生的輸出結(jié)果轉(zhuǎn)移到output窗口
22、Put例,37,By 語句,在DATA步中,SAS系統(tǒng)對每個BY組創(chuàng)建兩個臨時變量:First .variableLast .variable 它們用來區(qū)別每個BY組的第一個和最后一個觀測By例,38,Set語句,使用set語句復(fù)制數(shù)據(jù)集Point選項指明要讀入的記錄序號set 數(shù)據(jù)集 point=指針變量;可用于抽樣,一般與output語句連用Nobs選項創(chuàng)建一個臨時變量用來存儲數(shù)據(jù)集的觀測總數(shù)見set例,poin
23、t例,39,Set語句,Set語句可以串接多個數(shù)據(jù)集,形式如下Data 數(shù)據(jù)集; set 數(shù)據(jù)集A 數(shù)據(jù)集B ……; Run;Rename選項負(fù)責(zé)改名;in選項產(chǎn)生變量負(fù)責(zé)記錄觀測來自該數(shù)據(jù)集;見set2例,40,Merge語句,使用Merge語句并接多個數(shù)據(jù)集,形式如下Data 數(shù)據(jù)集;merge 數(shù)據(jù)集1 數(shù)據(jù)集2 ……;by 變量;run;見merge例,41,Update 語句,
24、Update語句用一個升級數(shù)據(jù)集中的觀測來修改一個主數(shù)據(jù)集。Update語句一定要與BY語句一起使用,BY語句給出了合并觀測時共同變量的名字主數(shù)據(jù)集中的共同變量必須是單值的,即不能有兩個或兩個以上的觀測其共同變量值相同Update例,42,Infile語句,Delimiter (DLM)選項:規(guī)定一個字符替代空格作為分隔符。Firstobs選項 :不是從文件的第一個記錄開始,而是從指定行開始讀取記錄Obs選項:規(guī)定用戶想從輸入
25、文件中連續(xù)讀取的最后一個記錄號Infile(dlm)例、 Infile(obs)例,43,Infile語句,DSD選項:1、使最外層引號括起的內(nèi)容當(dāng)成整個字符串輸入,并去除最外層引號2、默認(rèn)分隔符為逗號3、兩個相鄰的分隔符意味著前一個分隔符后的字段為缺失值Infile(dsd)例 (回顧input2例),44,Infile語句,當(dāng)行末尾數(shù)據(jù)寬度少于規(guī)定寬度時Flowover: 默認(rèn)選項,將下一條記錄讀入Missover:將
26、變量置為缺失Truncover:將數(shù)據(jù)直接讀入,不管寬度是否少于規(guī)定寬度Stopover:系統(tǒng)終止數(shù)據(jù)步執(zhí)行,報告出錯Missover例,45,Infile語句,Lrecl=n選項:設(shè)定源數(shù)據(jù)文件行的物理長度,缺省為256,最大可設(shè)為32767Pad | Nopad選項:pad選項指當(dāng)寬度少于規(guī)定寬度時,在后面填充空格至Lrecl=n規(guī)定的行長度,缺省為nopadMissover例,46,運行(算)語句賦值語句和累加語句,賦
27、值Variable = expression例:x=a + b;累加 Variable + expression例:if x=5 then n+1;例:n+(-1)累加語句中的變量必須是數(shù)值型變量,初始值為0,47,Delete和lostcard(*)語句,Delete語句告訴SAS系統(tǒng)停止處理當(dāng)前的觀測,并且返回到這個Data步的開頭處理其他觀測當(dāng)SAS系統(tǒng)遇到用幾個記錄表示一個觀測的時候,數(shù)據(jù)中有丟失記錄時,使用Lost
28、card語句來重新對準(zhǔn)輸入數(shù)據(jù)delete例,lostcard例,48,Stop和abort語句,用stop語句來停止處理data步,正被處理的那個觀測沒有添加到SAS數(shù)據(jù)集中,stop語句不影響后面的任意data步或proc步的執(zhí)行用abort語句來中止SAS系統(tǒng)執(zhí)行當(dāng)前DATA步,return選項關(guān)閉SAS并返回操作系統(tǒng)。Stop與abort的區(qū)別在于abort語句置_error_變量為1Abort例,49,Where 語句
29、,從已存在的SAS數(shù)據(jù)集選擇子集,在把觀測讀入之前規(guī)定數(shù)據(jù)必須滿足一個條件Where 語句與if語句相比在讀取數(shù)據(jù)時更為高效,因其在移動所有觀測到子集之前先選擇數(shù)據(jù)。Where語句豐富的表達式where例,50,Output語句,DATA步的每次迭代,后臺自動使用output語句,但如果程序中主動加上output語句,即相當(dāng)于取消自動output語句,變成在條件符合時輸出。output例,51,Output語句,用到output
30、語句其他情況:output123例1.從一個輸入的數(shù)據(jù)文件中,創(chuàng)建幾個SAS數(shù)據(jù)集2.從輸入的每個數(shù)據(jù)行中,創(chuàng)建二個或更多個觀測3.把幾個輸入觀測組合并成為一個觀測后面接名字表示輸出到指定數(shù)據(jù)集,但名字必須也在DATA后出現(xiàn),52,Call語句,調(diào)用其他子程序call routine (parameter-1 ) 如SAS提供一系列隨機數(shù)子程序發(fā)布操作系統(tǒng)命令call system (command) Call例(
31、*)、Call_system例,53,控制語句Do語句(循環(huán)語句),DO語句規(guī)定,在DO后面直到出現(xiàn)END語句之前的這些語句作為一個單元被執(zhí)行。簡單DO語句,常用在if-then/else語句里循環(huán)DO語句,用下標(biāo)變量規(guī)定重復(fù)次數(shù)do i=1 to 10;do i=1 to exit;do i=2 to 8 by 2;Do_simple例,do例,do_exit例,54,Do while語句,當(dāng)條件成立時重復(fù)執(zhí)行Do組里的
32、語句Do while (expression);括號里的表達式在Do組里的語句被執(zhí)行前在循環(huán)的開頭被計算。如果表達式是真的,Do組被執(zhí)行Do while例,55,Do until語句,有條件地執(zhí)行Do組里的語句,在循環(huán)的最后而不是在循環(huán)的開頭計算表達式,如果表達式是真的,Do組就不再被執(zhí)行。Do組里的語句至少執(zhí)行一次。Do until例,56,Select語句,允許SAS去執(zhí)行幾個語句或者語句組中的一個。當(dāng)一個特殊條件為真時
33、,執(zhí)行對應(yīng)when語句,如果所有when條件均不成立,選擇執(zhí)行otherwise語句,用end結(jié)束Select(when)例,57,If語句,1.形如:IF expression THEN statement; ELSE statement;2.形如:IF variable例:if x then y=x;當(dāng)變量x的值為0和缺失之外的任意值時表達式均為真If_else例、If_x例,58,Return語句,
34、告訴SAS系統(tǒng)在data步當(dāng)前這個位置上停止執(zhí)行語句并在繼續(xù)執(zhí)行之前返回到一個預(yù)定的位置(通常是data步開頭)當(dāng)return語句使得SAS返回到data步開頭時,SAS首先輸出當(dāng)前觀測到新數(shù)據(jù)集中。每個data步都有一個隱含的return語句作為最后一個可執(zhí)行的語句Return例,59,Go to語句,告訴SAS系統(tǒng)立即轉(zhuǎn)到Go to語句所指示的那個語句,并從那個語句開始執(zhí)行后面的語句。形如:GO TO label;labe
35、l規(guī)定語句標(biāo)號來指示Go to的目標(biāo),它必須與go to語句在同一個data步Return選項規(guī)定返回而不執(zhí)行下面語句Go to例,60,Link語句(*),形如link label;立即轉(zhuǎn)到由label語句指示的位置,并從那里開始繼續(xù)執(zhí)行語句直到一個return語句被執(zhí)行。與goto語句的區(qū)別是:標(biāo)簽內(nèi)的return語句讓SAS立即返回到link語句后面的那個語句并從那里繼續(xù)執(zhí)行Link例,61,Continue和leave
36、語句,Continue語句使得某個do循環(huán)中當(dāng)前這次循環(huán)過程停止進行,并繼續(xù)進行下一次循環(huán)過程。Leave語句停止當(dāng)前整個do組循環(huán)或select組的處理過程,并用跟在do組或select組后面的下一個語句繼續(xù)執(zhí)行data步Continue例,leave例,62,循環(huán)的嵌套(*),Do(do)例、select(do)例,63,怎樣選擇使用不同的控制語句,DO:多次執(zhí)行同樣的代碼塊DO while:當(dāng)while條件為真時,多次執(zhí)行同
37、樣的代碼塊DO until: 多次執(zhí)行同樣的代碼塊,直到until條件為真,代碼塊總會執(zhí)行一次SELECT:知道明確的離散選擇項時使用IF:希望從2個或多個可能的事件中完成一個,允許連續(xù)選擇項,64,怎樣選擇使用不同的控制語句,跳轉(zhuǎn)代碼(go to,link):需要暫停主代碼,執(zhí)行“標(biāo)簽”指明的其它代碼中止代碼(return,continue,leave):負(fù)責(zé)某種形式的中止。,65,信息語句數(shù)組(array)語句,當(dāng)需要用同
38、一種方法處理很多變量時,可以用數(shù)組語句定義這組變量為某個數(shù)組中的元素。1.顯示下標(biāo)array語句:由一個數(shù)組名字,在數(shù)組中元素個數(shù)的說明,及元素列表組成。2.隱含下標(biāo)array語句:由一個數(shù)組名字、一個下標(biāo)變量和列表名組成。,66,顯示下標(biāo)array語句,形如:ARRAY array-name {subscript} >例 array simple{3} red green yellow; array x
39、{5,3} score1-score15; array c{3}等價于array c{3} c1-c3 array test{3} t1 t2 t3 (90 80 70) 數(shù)組中的變量必須全是數(shù)值型或字符串型,array例,67,顯示下標(biāo)array語句,規(guī)定數(shù)組中每一維的上下界:array x{1:5,1:3} score1-score15;{*}表示SAS系統(tǒng)通過數(shù)組中變量的個數(shù)來確定下標(biāo)??捎胐im(數(shù)組名)函
40、數(shù)計算數(shù)組元素個數(shù)。_temporary_建立一個臨時數(shù)組元素列表array(dim)例,array(temporary)例,array(prod)例,68,隱含下標(biāo)array語句,形如:ARRAY array-name array-elements 如果沒有規(guī)定下標(biāo)變量,SAS系統(tǒng)使用自動變量_i_作為下標(biāo)變量,下標(biāo)變量范圍從1到這個數(shù)組元素的個數(shù)如:array x x1-x5Array(s)例,69,Do over語句
41、,Do over 語句對每個數(shù)組元素自動地執(zhí)行Do組中的語句,它等價于 do i=1 to k;其中i是這個數(shù)組的下標(biāo)變量,k是數(shù)組元素的個數(shù)。Do over語句常用在對隱含下標(biāo)數(shù)組元素執(zhí)行Do組里的語句Do over例,70,Informat語句,Informat語句把輸入格式與變量聯(lián)系起來,在data步,可以用informat語句對input語句中列出的變量規(guī)定缺省時的輸入格式informat例,71,Format語句,在d
42、ata步把變量同輸出格式聯(lián)系起來可以規(guī)定缺省選項,如:format default=8.2;Format(informat)例,format_=例,,72,Drop和keep語句,Drop語句:刪掉變量語句drop variable-listKeep語句:保留變量語句keep variable-list雖然出現(xiàn)在drop和keep語句中的變量不包含在正被創(chuàng)建的SAS數(shù)據(jù)集中,但這些變量仍可以用在程序語句中Drop和kee
43、p不能同時使用,73,Retain語句,使用retain給變量賦予初值,并保留到讀下一個觀測retain month1-month5 1retain var1-var4 (1,2,3,4)當(dāng)retain后無變量時,用input或賦值語句創(chuàng)建的所有變量的值,保留上次data步執(zhí)行的值Retain例、retain2例,74,Attrib語句,在data步內(nèi)允許用一個attrib語句來規(guī)定一個或幾個變量的輸出、輸入格式,標(biāo)簽和長度,即
44、規(guī)定變量屬性Attrib x label=‘中國載人飛船’ length=4 informat=8.5 format=8.2;Attrib例,75,Window語句,創(chuàng)建用戶專用的窗口,可用來顯示文字說明或接受輸入的數(shù)據(jù)Window例,76,上機練習(xí)1,編制程序:六個變量id d1-d5,數(shù)據(jù)節(jié)選如下:1 2 7 23
45、100 1000 2 3 33 54 56 10003 . 4 6 44 100要求:如果相鄰數(shù)據(jù)小于等于7,則置為缺失,數(shù)據(jù)結(jié)果應(yīng)如下:1 . . 23 100 10002 3 33 . . 10003 . . . 44 100,77,上機練習(xí)2(ex2例),編制程
46、序:3個變量d1-d3,數(shù)據(jù)節(jié)選如下:1 2 7 2 3 . 3 . 4要求:如果發(fā)現(xiàn)缺失值 ,即用該列數(shù)據(jù)的平均值來代替,數(shù)據(jù)結(jié)果應(yīng)如下:1 2 7 2 3 5.5 3 2.5 4,78,Proc步的通用語句(Reg例),Proc- 用在proc步的開頭并規(guī)定用戶使用的SAS過程名字及其他信息Var-規(guī)定用
47、這個過程分析的一些變量Model-規(guī)定在模型中類似表示因變量(左)和自變量(右)的這樣一些變量及其他信息Weight-規(guī)定一個變量,它的值是這些觀測的相應(yīng)權(quán)數(shù),79,Proc步及通用語句,Freq-規(guī)定一個變量,其值表示頻數(shù)Id-規(guī)定一個或幾個變量,他們的值在打印輸出中或由此過程產(chǎn)生的SAS數(shù)據(jù)集中用來識別觀測Where-在SAS把觀測引入proc步之前,用來選擇符合特殊條件的觀測Class-在分析中指定一些變量為分類變量,8
48、0,Proc步及通用語句,By-規(guī)定一些變量,SAS過程對輸入數(shù)據(jù)集用by變量定義的幾個數(shù)據(jù)組分別進行分析處理Output-給出用該過程產(chǎn)生的輸出數(shù)據(jù)集的信息Quit-結(jié)束交互式的過程其他如Attrib屬性語句、format輸出格式語句、label標(biāo)簽語句等,81,Transpose(轉(zhuǎn)置過程),Transpose過程完成對sas數(shù)據(jù)集的轉(zhuǎn)置,即把觀測變?yōu)樽兞浚兞孔優(yōu)橛^測。Out選項規(guī)定輸出數(shù)據(jù)集Prefix選項規(guī)定轉(zhuǎn)置后的
49、變量名前綴Id選項使用其后規(guī)定的變量值作為輸出數(shù)據(jù)集中被轉(zhuǎn)置的變量名Transpose例,82,Means均值過程,計算數(shù)據(jù)集中數(shù)值變量的簡單統(tǒng)計量T選項:檢驗數(shù)據(jù)總體均值為0的假設(shè)時,t統(tǒng)計量的值Prt選項:Prob >|T| , 數(shù)據(jù)總體均值為0的概率是多少默認(rèn)生成的_type_和_freq_變量分別規(guī)定分組數(shù)(如果有)和頻率Means例,weight例,freq例,83,Means均值過程,Maxdec選項規(guī)定輸
50、出結(jié)果的小數(shù)部分最大位數(shù)可以輸出的統(tǒng)計量:N, Nmiss, mean, std, min, max, range, sum, var, uss, css, cv(變異系數(shù)), stderr, t, prt, sumwgt, skewness(偏度), kurtosis(峰度), clm(置信限), lclm(置信下限), uclm(置信上限),84,Format過程(format_num,char,lowhigh例),使用Form
51、at過程把輸出格式同Data步、Proc步的變量聯(lián)系起來。輸出格式一:SAS格式輸出格式二:Format定義的格式,形如value 格式名 變量值=‘自定義值’;proc …;format 變量 格式名.;,85,Format過程,輸出格式三:圖示輸出,只適用于數(shù)值型變量,形如picture 格式名 other=’格式化值’;proc …;format 變量 格式名.;Format_picture例,86,Plot過程,
52、對數(shù)據(jù)集中任兩個變量的n個觀測值畫出散點圖,第一個變量表示y軸,第二個表示為x軸兩種情況:plot y*x=‘+’;(規(guī)定一個字符作為作圖字符)plot y*x=sex;(作圖字符由變量的值給出),87,Plot過程,Vref(Href)要求散布圖在垂直(或水平)軸的一些規(guī)定值上畫水平線(或垂直線)作為參照線/overlap選項:在同一張圖上作兩個以上的散點圖。如:plot y*x a*b /overlay;Plot(函數(shù))例
53、,88,Standard標(biāo)準(zhǔn)化過程,目的是使不同量綱的變量能互相比較Standard過程按給定的均值和標(biāo)準(zhǔn)差對數(shù)據(jù)集中的變量進行標(biāo)準(zhǔn)化變換,并生成一個包含標(biāo)準(zhǔn)化值的新SAS數(shù)據(jù)集Mean=mean-value: 規(guī)定均值Std=std-value: 規(guī)定標(biāo)準(zhǔn)差Standard例,89,Rank過程,與其研究數(shù)值大小不如研究排序的情況該過程把數(shù)值從最小到最大排列,對最小值賦予秩1,對第二小值賦予秩2,一直到賦予秩n,即未丟失的觀
54、測個數(shù)。出現(xiàn)結(jié)值(tie)時,其秩可以賦予平均秩或高秩或低秩。Ranks 選項分配求秩后的變量名 Rank例,90,Univariate過程,又稱單變量過程,可以求單個變量的大部分統(tǒng)計指標(biāo)Normal選項:要求對數(shù)據(jù)服從正態(tài)分布(原假設(shè))進行檢驗。當(dāng)樣本容量2000時,使用D統(tǒng)計量檢驗,91,Univariate過程,Output out=datasets要求輸出包含指定統(tǒng)計量的數(shù)據(jù)集Pctlpts規(guī)定該過程不能自動提供而用
55、戶又希望計算的百分位數(shù)Pctlpre要求給出百分位數(shù)的輸出變量名的前綴,pctlname……后綴。Univariate例,92,Corr過程,計算變量間的相關(guān)系數(shù)相關(guān)是對兩個變量間線性關(guān)系強弱程度的一種測度。如果一個變量恰好可表示成另一個變量Y的線性函數(shù),那么相關(guān)系數(shù)為1或-1,即正相關(guān)或負(fù)相關(guān)。如果兩變量間的相關(guān)系數(shù)為0,這意味著兩變量無線性關(guān)系。Corr例,93,Options過程,列出SAS系統(tǒng)選項的當(dāng)前值。SAS系統(tǒng)
56、選項是SAS系統(tǒng)用來控制SAS數(shù)據(jù)集的處理,輸出的格式和內(nèi)容等的全局選項系統(tǒng)選項的優(yōu)先次序:options語句>配置文件>缺省設(shè)置例:options nodate;Options(view)例,options例,94,Printto過程,該過程用來定義SAS過程輸出和SAS日志輸出的地點Print選項規(guī)定輸出結(jié)果存放地點Log選項規(guī)定輸出日志存放地點New選項表示要覆蓋已存在的文件,如無new選項但有已存在的文
57、件名,則在已有的文件內(nèi)容后追加Printto例,95,Compare過程,該過程用來比較兩個SAS數(shù)據(jù)集中的內(nèi)容用base和compare選項分別規(guī)定待比較的兩個數(shù)據(jù)集Compare例,96,Datasets數(shù)據(jù)庫管理過程,該過程用來對SAS數(shù)據(jù)庫中的SAS文件進行列表、拷貝、更名,添加和刪除等操作Datasets是交互過程,可以不斷插入并執(zhí)行該過程的相關(guān)語句而不用重復(fù)調(diào)用Datasets,但可以使用quit語句或另一個proc
58、步或data步來終止此過程Datasets1例,97,Datasets過程,Index create :創(chuàng)建簡單或復(fù)合索引Pw (read、write、alter):設(shè)置密碼Repair member-name: 在適當(dāng)情況下試圖重新存貯被損壞的SAS數(shù)據(jù)集或目錄Datasets(index)例、datasets(pw)例,98,SQL過程,SQL 結(jié)構(gòu)查詢語言(Structured Query Language) 是一個標(biāo)準(zhǔn)化
59、的廣泛使用的語言,可以檢索和更新關(guān)系表格和數(shù)據(jù)庫中的數(shù)據(jù)。關(guān)系,類似于數(shù)學(xué)中的集合概念,實際上被表現(xiàn)為一些排列成行和列的二維表格(關(guān)系數(shù)據(jù)庫),99,SQL過程,SQL語句的特征:子句內(nèi)的項用逗號分開;不需規(guī)定Run語句;,100,SQL過程,Select語句用來檢索和操作存于表中的數(shù)據(jù)。(order從句,format選項)Create語句生成表格Update語句增加或修改在表格的列里的數(shù)值,Insert和Delete語句插入
60、和刪除行,用Alter語句增加、修改、刪去列來修改表格。,101,SQL過程,Delete語句從表中刪去where表達式為真的所有行Insert to往一個新的或已存在的表中加入新的行Sql例,102,全程語句,Quit, run, endsas :分別為結(jié)束、運行SAS語句、關(guān)閉SAS系統(tǒng)Title, footnote:添加標(biāo)題和腳注Filename:對一個外部文件定義標(biāo)記Libname:對一個SAS數(shù)據(jù)庫定義標(biāo)記File
61、name例,libname例,103,全程語句,Missing語句規(guī)定表示缺失值的字符,通常出現(xiàn)在data語句中,但其作用范圍是全局的。Page語句使得日志跳到新一頁Skip語句使得日志跳過規(guī)定的行數(shù)%include語句從外部文件讀出SAS語句或數(shù)據(jù)行并執(zhí)行:Missing例,page例,skip例,Include1例,104,Tabulate制表過程(Tabulate例),由分類變量、分析變量和統(tǒng)計量關(guān)鍵詞組成的表達式構(gòu)成描述
62、性統(tǒng)計報表。Tabulate過程的Table語句的操作符(星號、空格、園括號,逗號)1.交叉連接項,即嵌套(使用*號)2.項與項之間的并列連接,即平行(使用空格)3.改變次序(使用園括號),105,Tabulate制表過程,4.產(chǎn)生的報表最多三維:如果包含二維,次序為行、列;如果包含三維,次序為頁、行、列。(維表達式間用逗號隔開;) 5. 用定義Pctn統(tǒng)計量的分母分類變量必須在class語句中說明分析變量必須在var語句
63、中列出,106,Tabulate制表過程,Proc tabulate過程的其他語句1. missing選項:要求把缺失值作為分類變量的有效水平2. order=freq | data | internal | formatted規(guī)定報表中分類變量值出現(xiàn)的次序freq: 按頻數(shù)下降的次序data: 按原數(shù)據(jù)集中出現(xiàn)的先后次序internal: 按非格式化值的次序formatted: 按格式化值的次序,107,Tabulate
64、制表過程,Label語句用來對變量加標(biāo)簽Keylabel語句用來對統(tǒng)計量加標(biāo)簽統(tǒng)計量:N(字符型變量的默認(rèn)統(tǒng)計量), Nmiss, Mean, Std, Min, Max,Range, Sum(數(shù)值型變量默認(rèn)統(tǒng)計量),Var, Pctn(頻數(shù)N的百分?jǐn)?shù),后面參數(shù)為列變量則是行百分比,后面參數(shù)為行變量則是列百分比)F或format表示輸出使用一定的格式,如:a*f=8.2;,108,Tabulate制表過程,全類變量all,當(dāng)al
65、l嵌入某個交叉時,all不考慮分類變量的水平,而用all來生成子集和及總和。如 B*(A all)、(all B)* (all A)Tabulate1例,109,上機練習(xí),按tabulate1例,模擬編制類似數(shù)據(jù),練習(xí)各種制表方法,110,第五部分 SAS/stat 模塊,STAT模塊的過程介紹,111,Freq過程(freq_cows,_eye例),Freq過程用于產(chǎn)生單向到n向的頻數(shù)表或交叉表以及針對表格的各種統(tǒng)計量。用星號連
66、接起來的變量,最后一個變量的值形成列,倒數(shù)第二個變量的值形成行,其余變量的每一個水平形成一層。如:table a*b*c*d;使用chisq卡方統(tǒng)計量,檢驗變量間的相關(guān)性,原假設(shè)為變量間不相關(guān),112,SAS宏,利用宏可以減少在完成一些共同任務(wù)時必須輸入的文本量利用宏可以使程序模塊化,使程序易讀、便于修改、移植、方便重復(fù)使用,113,SAS宏變量,宏變量屬于SAS宏語言,與普通變量的區(qū)別是可以獨立于DATA步可以在SAS程序中除
67、數(shù)據(jù)行之外的任何地方定義并使用宏變量%let語句定義宏變量并分配一個值給宏變量(如:%let dsn=3)當(dāng)引用一個宏變量的值,放&號在宏變量前,114,SAS宏變量(macro_str,_var,_auto例),使用%str函數(shù)圍住宏變量的值,使得在這個值內(nèi)部的分號作為這個文本的部分,而不是%let語句的結(jié)束使用%put語句在LOG窗口顯示宏變量的值SAS/BASE中的自動宏變量,如:sysver, systime(給
68、出SAS程序或會話開始執(zhí)行的時間);,115,SAS宏,用%macro語句開始一個宏,同時給出這個宏的名字。如:%macro dsn;用%mend語句結(jié)束一個宏,其后給出宏名字。如:%mend dsn;放一個百分?jǐn)?shù)符號(%)在宏名字的前面以調(diào)用一個宏,如%dsnMacro例,116,宏參數(shù),被定義在一個%macro語句的宏名字后括號內(nèi)的宏變量稱為宏參數(shù),可以直接給出宏參數(shù)的值,也可以在調(diào)用這個宏時給出這些參數(shù)的值。對參數(shù)分配的值
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人大經(jīng)濟論壇spss
- 創(chuàng)業(yè)實戰(zhàn)初級班教程(一)
- 蚊蟲及其防制初級班
- 輪滑 初級班教學(xué)
- 足球初級班活動方案
- fpga應(yīng)用開發(fā)初級班環(huán)境
- 教孩子學(xué)象棋 初級班
- 數(shù)碼攝影知識初級班講座招生
- 羽毛球初級班訓(xùn)練計劃
- 舞龍(初級班)體育選項課教案
- ps初級班 1-0 軟件界面
- 人大經(jīng)濟學(xué)題庫
- 櫻花雨初級班復(fù)習(xí)詳細(xì)匯總
- 同等學(xué)歷考試閱讀初級班講義
- 小學(xué)古箏社團初級班教學(xué)計劃
- 黨校47期初級班考試答案
- 小學(xué)古箏社團初級班教學(xué)計劃
- 初級班競賽題目-真耶穌教會
- 揚州大學(xué)黨校初級班網(wǎng)上考試真題
- 初級班《第一個ribbon程序》
評論
0/150
提交評論