整理的SAS筆記_第1頁
整理的SAS筆記_第2頁
整理的SAS筆記_第3頁
整理的SAS筆記_第4頁
整理的SAS筆記_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上第一章 sas是什么1.SAS系統(tǒng)是一個模塊化的集成軟件系統(tǒng);  數(shù)據(jù)處理和統(tǒng)計領(lǐng)域的國際標準軟件;        世界領(lǐng)先的數(shù)據(jù)分析和信息系統(tǒng); SAS系統(tǒng)廣泛應(yīng)用于金融、醫(yī)療、運輸、通迅、政府、科研和教育等領(lǐng)域;       SAS含義        Statistical  Analysis  System2.SAS

2、系統(tǒng)的主要四大功能        數(shù)據(jù)訪問       數(shù)據(jù)管理       數(shù)據(jù)分析       數(shù)據(jù)呈現(xiàn)3.SAS系統(tǒng)對50多種數(shù)據(jù)源提供了引擎 ,如: DB2 和 Oracle第二章 開始sas程序的講解 1.sas程序的介紹 有兩種程序步組成,數(shù)據(jù)步和過程步,每個步通常有若干個SAS語句組成;  &#

3、160;     數(shù)據(jù)步:以data語句開始,用于創(chuàng)建和處理SAS數(shù)據(jù)集;        過程步:以proc語句開始,主要用戶處理SAS數(shù)據(jù)集; 2.SAS數(shù)據(jù)集   通常分為兩個部分:描述部分(包含數(shù)據(jù)屬性的信息)和 數(shù)據(jù)部分(包含數(shù)值);                數(shù)據(jù)集的列稱為變量(Variable

4、),行稱為觀測(Observation)。 查看數(shù)據(jù)集的描述部分:proc contents data=sas_data_set;run;        查看數(shù)據(jù)集的數(shù)據(jù)部分:proc print    data=sas_data_set;run;4.SAS變量的類型      *字符型變量 (Character Variable )(1-32767字節(jié)),均以字母、下劃線開頭;字符型變量的缺省數(shù)據(jù)用空格表示;  &

5、#160;   *數(shù)值型變量 (Numerical Variable )默認為8個字節(jié)的長度,數(shù)值型變量的缺省數(shù)據(jù)用點(.)表示;  5.變量的命名規(guī)范:132個字符長度,不區(qū)分大小寫,以下劃線或字母開頭第三章  sas數(shù)據(jù)倉庫1.每次SAS啟動都自動生成三個庫標記:WORK、SASUSER和SASHELP;2.庫的分類     永久性庫:sasuser、sashelp、自定義的庫     臨時性庫:只有一個,名為WORK,可以省略庫標記;每次啟動SAS自動生成,結(jié)

6、束SAS后庫中的數(shù)據(jù)被自動刪除; 用libname指定庫標記,如:libname temp“e:tempdata”;3.使用關(guān)鍵詞_ALL_列出數(shù)據(jù)倉庫中所有的sas文件,使用NODS option來禁止對數(shù)據(jù)集的描述 PROC CONTENTS DATA=libref._ALL_  NODS; RUN; 注意:NODS選項只能和_ALL_一起聯(lián)用第四章 數(shù)據(jù)列表報表1.print過程  語法格式: proc print data=SAS數(shù)據(jù)集 noobs;  var 分析變量1 分析變量2 . 分析變量

7、n;  where 表達式;  sum 求和變量;   run;     Noobs選項:在PRINT過程中可以用NOOBS選項去掉OBS列;                    VAR語句:控制變量的出現(xiàn)與否以及出現(xiàn)的順序;     WHERE語句:控制哪

8、些觀測將出現(xiàn)在報表中;它的表達式主要是操作數(shù)和操作符,     SUM語句:計算變量的總合;2.觀測的排序和分組§(sort)和(by)  對數(shù)據(jù)進行分組并求每組小計,用PRINT過程的BY語句,但必須先對相應(yīng)的變量進行排序;  如:proc sort data=temp.empdata out=temp.empdata2;         By JobCode;      Run; &

9、#160;    proc print data=temp.empdata;      by JobCode;      sum Salary;      pageby JobCode; /*使產(chǎn)生的報表按組分頁*/      run;第五章:輸出1.標題和腳注:  在所有的SAS報告中都可以加標題(Title)和腳注(Footnote):    

10、 語法格式:TITLEn text;            FOOTNOTEn text;     特點:n 的取值范圍是1-10;           標題出現(xiàn)在每頁的頂部;           腳注出現(xiàn)在每頁的底部;  

11、60;        如果沒有定義標題,缺省的標題是:“The SAS System”;           如果沒有腳注就不出現(xiàn);           沒有n的標題和腳注就是:TITLE1、FOOTNOTE1;          

12、; 定義的標題和腳注一直有效,知道另一個語句被執(zhí)行;           帶n的標題或腳注被執(zhí)行后,替代了原先具有同樣號碼的標題和腳注;           帶n的標題或腳注被執(zhí)行后,取消了更大號碼的標題和腳注;      2.LABEL語句:產(chǎn)生用戶化和容易閱讀的表頭:      如:l

13、abel 變量1=標簽  變量2=標簽;      屬性:是最大長度為256個字符串;                 注意:在PRINT過程中必須用PRINT語句中的LABEL或SPLIT=選項才能被顯示;            在過程步中定義只在該過程中有效;

14、60;           在數(shù)據(jù)步中定義就被存在數(shù)據(jù)集的描述部分與數(shù)據(jù)集一直有效;3.format的使用 分類:系統(tǒng)format和用戶自定義format4.用戶自定義format的使用  format變量的語法格式:<$>format<w>.<d>  在VALUE語句中,格式可以賦予為: A單個數(shù)字:如:         

15、0;   Proc format;               Value gender 1=Female                          2=Male 

16、0;                        Other=Miscoded;             Run; B某數(shù)字范圍:如:        

17、0;    Proc format;                Value boadfmt  low-49=Below                        

18、      50-99=Average                              100-high=Above Average;         

19、0;   Run; C字符或字符串:如:             Proc format;                Value  $grade  A=GOOD         

20、0;                    B-D=PAID                             

21、I,W=POOR                              PILOT=pilot                 

22、0;            Other=Miscoded;             Run;    format的使用步驟: 第一步:用戶創(chuàng)建format  PROC FORMAT;          VALUE for

23、mat-name range1='label '        range2='label '       . . . ;  RUN; 第二步:應(yīng)用所創(chuàng)建的format  proc print data=ia.empdata;      format $varialble-name format-name;  run

24、;5.使用ODS創(chuàng)建html報表(利用ODS將SAS輸出結(jié)果生成HTML格式文件) ODS-Output Delivery System 語法格式:ODS HTML FILE='HTML-file-specification' <options>   產(chǎn)生輸出的sas代碼    ODS HTML CLOSE; 第六章 創(chuàng)建sas數(shù)據(jù)集1.列輸入(column input) *此模式讀入外部原始數(shù)據(jù)文件,適應(yīng)文件為:    

25、60;    數(shù)據(jù)固定在某些列中;            數(shù)據(jù)只包含標準的數(shù)字和字符; *過程:  a.開始一個數(shù)據(jù)步,并給數(shù)據(jù)步命名  b.用infile指明原始數(shù)據(jù)的存放位置  c.用input指明怎樣讀取原始數(shù)據(jù) *格式:     data 庫名.數(shù)據(jù)集名;  infile '文件名(路徑)' &

26、lt;選項>  input 變量名 <$> 起始列-結(jié)束列; ($用在變量是字符型)     run;2.格式輸入(formatted input) *適合用格式輸入的外部原始數(shù)據(jù)文件  數(shù)據(jù)是固定列;  但含有標準或者不標準字符以及數(shù)字的文件; *語法格式:   data SAS數(shù)據(jù)集;            Infile 外部

27、原始文件;            INPUT 指針控制 變量名 <$> 格式名;($表示字符型變量)          Run; *指針的控制:   n 移動指針到第幾列(絕對位置)   +n 把指針移動幾個位置(相對位置)3.輸入格式informat <$>informat-namew.<

28、;d>  說明:  $ 如果是字符型,使用$  informat-name是輸入格式的格式名  w 是變量總長度  .  句點是必修的分隔符,不能缺少  d  如果是數(shù)值型的話, d指定了小數(shù)位的長度4.分配變量屬性  變量的臨時屬性和永久屬性:   PROC步可賦予臨時屬性:其中的標簽只在該步顯示時有,并沒存在數(shù)據(jù)集里;         如

29、:proc print data=temp.dfwlax  label;                        Label Dest=Destination   FirstClass=First Class Passengers;       

30、0;            Run;   DATA步可賦予永久屬性:其中的標簽被存在數(shù)據(jù)的描述部分,與數(shù)據(jù)集一起存在;   如: data temp.dfwlax;            Infile c:coursetempdata.dat;       &

31、#160;    Input  12 Dest $3.  15 FirstClass $3. ;            Label  Dest=Destination  FirstClass=First Class Passengers;        Run;-第七章 數(shù)據(jù)步程序設(shè)計1.讀sas數(shù)據(jù)集以及創(chuàng)建變量   用DAT

32、A步產(chǎn)生SAS數(shù)據(jù)集的三種方法:      A.數(shù)據(jù)在作業(yè)流中:          DATA 語句;             INPUT 語句;             CARDS;   &

33、#160;         數(shù)據(jù)行;           ;           RUN;       B.數(shù)據(jù)在磁盤上:           DATA 語句;

34、              INFILE 語句;              INPUT 語句;           RUN;        C.數(shù)據(jù)來自其它SAS數(shù)據(jù)集:

35、            DATA 語句;               SET / MERGE / UPDATE / MODIFY語句;               <DATA步中的其它SAS語句>;

36、            RUN;2.用已有的數(shù)據(jù)集創(chuàng)建另一個數(shù)據(jù)集set的使用 DATA 新的數(shù)據(jù)集名;  SET input-SAS-data-set;  <additional SAS statements> RUN; 3.sas操作符和函數(shù)的使用 語法格式:function-name(argument1,argument2, . . .)  函數(shù):sum(argumen

37、t1,argument2, . . .);       TODAY();       MDY(month,day,year);       QTR(SAS-date);       MONTH(SAS-date);       WEEKDAY(SAS-date);4.有條件的程序語法結(jié)構(gòu):簡單if語

38、句 IF expression THEN statement; ELSE statement;復(fù)雜if語句 IF expression THEN DO;      executable statements END; ELSE DO;      executable statements END;設(shè)置變量長度 LENGTH variable(s) $ length;取數(shù)據(jù)集子集 a.WHERE語句 b.DE

39、LETE語句  IF expression THEN DELETE; c.子集IF語句  IF expression;使用sas日期常數(shù) 格式: 'ddMMMyyyy'd  例如:(example: '14dec2000'd)  說明:'d是必須的,用來把引號里的字符串轉(zhuǎn)換成sas日期-第八章 數(shù)據(jù)拼接1.使用set連接sas數(shù)據(jù)集  語法格式: DATA SAS-data-set ;  SET SAS-data-s

40、et1 SAS-data-set2 . . . ;  <additional SAS statements> RUN;  set中變量重命名 語法格式: SAS-data-set(RENAME=(old-name-1=new-name-1                        &

41、#160;    old-name-2=new-name-2                                          

42、60;                 .                                 &

43、#160;         .                                         

44、; .                                            old-name-n=new-name-n);  交叉sas數(shù)據(jù)集

45、,使用by語句  BY語句:使用BY語句可使生成的數(shù)據(jù)集按某變量排序,但輸入數(shù)據(jù)集必先按該變量排序過; 語法格式: DATA SAS-data-set;  SET SAS-data-set1 SAS-data-set2 . . . ;  BY BY-variable;       <other SAS statements> RUN;2.MERGE sas數(shù)據(jù)集(必先排序)  MERGE語法格式: DATA SAS-data

46、-set;  MERGE SAS-data-sets;  BY BY-variable(s);  <additional SAS statements> RUN;  IN= 選項 格式:SAS-data-set(IN=variable) 解釋:一個臨時的數(shù)字類型的變量,其值為0或者1  IN選項,當讀入多個SAS數(shù)據(jù)集時,用IN選項可確定本觀測來自哪個數(shù)據(jù)集;  variable0表示觀測不是來自本數(shù)據(jù)集  variable

47、1表示觀測是來自本數(shù)據(jù)集第九章 制作匯總報表1.基本的匯總報表(freq、mean)  freq報表默認的情況下:      分析每一個變量,顯示出每一個數(shù)據(jù)值,計算出數(shù)字類型的每列的百分比,指出每一個變量有多少條觀測中有缺失值   用此過程一般有兩個目的:     1:描述過程:產(chǎn)生頻數(shù)表和交叉表,可簡潔的描述數(shù)據(jù);    2:統(tǒng)計過程:產(chǎn)生各種統(tǒng)計量(頻數(shù)、百分比),分析變量間關(guān)系;  使用:   A.單項頻數(shù)表

48、:PROC FREQ DATA=SAS數(shù)據(jù)集;                 TABLES 變量;               RUN;   B.雙向交叉表:PROC FREQ DATA=SAS數(shù)據(jù)集;      &#

49、160;          TABLES 行變量*列變量;               RUN;   C.n向交叉表:PROC FREQ DATA=SAS數(shù)據(jù)集;               

50、0; TABLES a*b*c*d;               RUN; 如果要一張三向(或n向)交叉表 ,只要在TABELS語句中用星號將3個(或n個)變量名連接起來。 最后一個變量的值形成列,倒數(shù)第二變量的值形成行,其余變量的每一水平(或水平的組合)形成一層.2.MEAN過程 對數(shù)據(jù)集中的數(shù)值變量計算簡單描述統(tǒng)計量(個數(shù)、均值、標準差、最大值、最小值);                     如:proc means data=temp.crew;  

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論