It計(jì)算機(jī)課件 SAS統(tǒng)計(jì)分析基礎(chǔ)_第1頁(yè)
It計(jì)算機(jī)課件 SAS統(tǒng)計(jì)分析基礎(chǔ)_第2頁(yè)
It計(jì)算機(jī)課件 SAS統(tǒng)計(jì)分析基礎(chǔ)_第3頁(yè)
It計(jì)算機(jī)課件 SAS統(tǒng)計(jì)分析基礎(chǔ)_第4頁(yè)
It計(jì)算機(jī)課件 SAS統(tǒng)計(jì)分析基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩168頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

統(tǒng)計(jì)分析軟件包

一SAS統(tǒng)計(jì)分析基礎(chǔ)

學(xué)習(xí)目標(biāo)

A1、了解SAS系統(tǒng)的功能特點(diǎn);

>2、熟悉SAS系統(tǒng)的操作環(huán)境;

>3、掌握SAS系統(tǒng)的有關(guān)概念;

?4、學(xué)會(huì)使用DADAStep(數(shù)據(jù)步)建立數(shù)據(jù)集,能對(duì)現(xiàn)有

數(shù)據(jù)集進(jìn)行讀入、修改、拼接及合并;

>5、學(xué)會(huì)使用PROCStep(過(guò)程步)的幾個(gè)重要過(guò)程對(duì)數(shù)據(jù)

集進(jìn)行常規(guī)的統(tǒng)計(jì)分析和顯示;

>6、學(xué)會(huì)自己查看系統(tǒng)幫助;

>7、能夠利用SAS系統(tǒng)處理常見(jiàn)的臨床研究數(shù)據(jù)。

2

基本內(nèi)容

>1、SAS概述;

>2、SAS顯示管理系統(tǒng);

>3、SAS編程基礎(chǔ):

ASAS語(yǔ)句;SAS表達(dá)式;SAS常量;

ASAS變量;SAS算符;SAS函數(shù);

>4、DADAStep(數(shù)據(jù)步);

>5、PROCStep(過(guò)程步);

>6、常用統(tǒng)計(jì)分析模塊。

3

第一章SAS系統(tǒng)簡(jiǎn)介'

>1、SAS的含義

tatisticalAnalysisystem

>2、SAS系統(tǒng)

>數(shù)據(jù)處理和統(tǒng)計(jì)分析領(lǐng)域的國(guó)際標(biāo)準(zhǔn)軟件

>世界領(lǐng)先的數(shù)據(jù)分析和信息系統(tǒng)

>3、SAS軟件的發(fā)展

>SAS系統(tǒng)于1966年由美國(guó)NorthCarolina州立大學(xué)開(kāi)始研制,

1976年成立美國(guó)SAS軟件研究所公司。1998年已推出適用于

多種操作系統(tǒng)的版本SAS6.12,現(xiàn)在最新版本是SAS9.1。

>目前,世界上有120多個(gè)國(guó)家和地區(qū)的31000多個(gè)機(jī)構(gòu)在使用

SAS系統(tǒng),直接用戶(hù)超過(guò)3500000。SAS系統(tǒng)在世界范圍內(nèi)

被廣泛地應(yīng)用于政府、科研、教育、生產(chǎn)和商業(yè)等不同領(lǐng)域,

發(fā)揮著積極的作用。

4

4、SAS系統(tǒng)的特點(diǎn)

>SAS系統(tǒng)是用于數(shù)據(jù)分析與決策支持的大型集成式模塊化軟件包,

是一種組合軟件系統(tǒng)。核心部分是BaseSAS軟件,其它可選模塊

有:SAS/STAT軟件、SAS/GRAPH軟件、SAS/IML軟件、

SAS/OR軟件、SAS/ETS軟件等30多個(gè)。

>1、操作簡(jiǎn)便SAS的宗旨是為所有需要進(jìn)行數(shù)據(jù)處理、數(shù)據(jù)分析

的非計(jì)算機(jī)專(zhuān)業(yè)人員提供一種易學(xué)易用、完整可靠的軟件系統(tǒng)。

用戶(hù)把要解決的問(wèn)題用SAS語(yǔ)言(近乎自然英語(yǔ)的非過(guò)程語(yǔ)言)表達(dá)

出來(lái),組成SAS程序,提交給SAS系統(tǒng)就可以解決所提出的問(wèn)題。

>2、SAS系統(tǒng)將數(shù)據(jù)管理與統(tǒng)計(jì)分析溶為一體SAS程序的結(jié)構(gòu)由兩

個(gè)基本步驟任意組合而成。DATA步用于對(duì)數(shù)據(jù)的加工處理;

PROC步用于分析數(shù)據(jù)和編寫(xiě)報(bào)告。SAS系統(tǒng)克服了通常軟件或偏

重于數(shù)據(jù)管理功能或偏重于統(tǒng)計(jì)分析的弊病,把數(shù)據(jù)管理與統(tǒng)計(jì)

分析有機(jī)地結(jié)合在一起。

>3、適用性強(qiáng)、應(yīng)用面廣SAS系統(tǒng)適用于任何經(jīng)驗(yàn)的人員(初學(xué)

者或有經(jīng)驗(yàn)的用戶(hù));適用于任何類(lèi)型的數(shù)據(jù);適用于幾乎是任何

應(yīng)用的需要;適用于任何計(jì)算機(jī)環(huán)境;擴(kuò)展性能強(qiáng)。

5

5、SAS軟件的啟動(dòng):

>用如下方法可以進(jìn)入SAS系統(tǒng)的窗口運(yùn)行環(huán)境:

?菜單方式:

A依次點(diǎn)擊“開(kāi)始”——>“程序”----->wTheSAS

System^^----->“TheSASSystemforWindowsv6.12"即

可。

?快捷方式:Sas.exe

A在Windows桌面系統(tǒng)下雙擊SAS圖標(biāo)

6

6、SAS工作界面

菜單條

快捷

<工具欄

命令框

水平

<-垂賓

潦動(dòng)條

消息欄當(dāng)前文件夾名

7

7、SAS顯示管理系統(tǒng)

>SAS顯示管理窗口可分為兩大類(lèi):

基本窗口和其它窗口。

>基本窗口(三個(gè)):

>PROGRAMEDITOR窗口(程序編輯窗,縮寫(xiě)為PGM);

>LOG窗口(登錄窗或日志窗);

AOUTPUT窗口(輸出窗);

>PGM窗口:

輸入和編輯文本,包括SAS語(yǔ)句;提交SAS語(yǔ)句;拷貝一個(gè)外部

文件到PGM窗口,或拷貝窗口內(nèi)容到外部文件上;

>LOG窗口

LOG窗口包含SAS日志,它是當(dāng)前SAS會(huì)話(huà)的記錄。一個(gè)典型的

記錄顯示:在當(dāng)前會(huì)話(huà)中發(fā)布的SAS語(yǔ)句;注釋、警告和出錯(cuò)

(紅色一錯(cuò)誤蘭色一正常綠色一警告)

>OUTPUT窗口:

這個(gè)窗口也稱(chēng)為L(zhǎng)ISTING窗口,它包含由大多數(shù)SAS過(guò)程產(chǎn)生的

輸出。在SAS會(huì)話(huà)期間相繼產(chǎn)生的輸出都附加到OUTPUT窗口內(nèi)

容中。

>其它窗口:

除了三個(gè)基本窗口以外,顯示管理包含很多其它窗口。各個(gè)窗

口均可在任何一個(gè)窗口的命令行鍵入相應(yīng)的命令來(lái)打開(kāi)。下面按

字母順序列出包括三個(gè)基本窗口在內(nèi)的主要顯示管理窗口,并給

出簡(jiǎn)單描述。

9

Command===>

14:36Sunday,February1,2004Command===>

00001

TheSASSystem00002

00003datag.xx4;

0bsgrpcolf00004inputgrpcolf;

00005cards;

\\300006113

22800007128

3135nnnnniaG

1A

00009148窗

OUTPUT?°00010156PGM

g00011213

~22~:00012228

23

p00013234

24

700014248

1025

00015257

00016;;

00017procfrt>q;

00018tablegr*p*col/chisq

17procprin;run;_.00019weighti>?

ERROR:ProcedurePR1Nnotfound..

00020run;

VOTE:TheSASSystemstoppedprocess00021

VOTE:PROCEDUREPRINused:

rea1time0.04seconds

VOTE:SCLsourceline.

18procprintdats=a;run;

Jf^RNING1-322:flsymbolDATAwasmisspelledasdats.

VOTE:WritingHT「H_otiuy.iib:sashtml.htm

VOTE:Therewere1observationsreadfromthedatasetWORK.A.

MOTE:PROCEDUREPRINTused:

rea1time0.10seconds

10

常用顯示管理窗口及調(diào)用命令

窗口描述如何調(diào)用

PROGRAMEDITOR允許插入、編輯和提交SAS語(yǔ)句及存貯源PGM|F5

(程序編輯窗)文件

LOG對(duì)當(dāng)前SAS會(huì)話(huà)顯示信息和SAS語(yǔ)句LOG|F6

(日志窗)

OUTPUT顯示過(guò)程輸出OUTPUT|F7

(輸出窗)

VAR顯示有關(guān)SAS數(shù)據(jù)集中變量及它們屬性的VAR

信息

8、顯示管理命令

>SAS顯示管理系統(tǒng)包括眾多的命令讓用戶(hù)完成各種任務(wù)。根據(jù)發(fā)

布命令的位置可將其分為命令行命令和行命令。顯示管理命令按

為慣是從命令行comman&===>^入箱應(yīng)的命令發(fā)布的,因此稱(chēng)這

些命令為命令行命令;而一些文本編輯命令按習(xí)慣是從顯示的行

號(hào)上發(fā)布的,因止匕這些命令稱(chēng)為行命令(Windows環(huán)境下較少應(yīng)

用)。

>幾個(gè)重要的命令行命令:

1)窗口切換命令:

PGM|F5:切換到PGM窗口

LOG|F6:切換到LOG窗口

OUTPUT|F7:切換到OUTPUT窗口

2)編輯命令:

CLEAR|Ctr+E:清除當(dāng)前工作窗口的所有信息

RECALL|F4:將運(yùn)行過(guò)的程序調(diào)回到PGM窗口

SUBMIT|F8:將PGM窗中的所有程序提交運(yùn)行

HOME:將光標(biāo)移到命令行

12

9、文件的保存與打開(kāi)

>保存文件:

方法1(命令法):

FILE命令:將當(dāng)前工作窗口的內(nèi)容寫(xiě)到外部文件中。

例如:FILEtD:\Myfile.SAS,回車(chē)后將信息寫(xiě)到D盤(pán)根目錄下

一個(gè)名為Myflle.SAS的文件上。

方法2(菜單法):

“File一"SaveA§”,輸入文件名“Myflle”點(diǎn)“保存”即可。

>打開(kāi)文件:

方法1(命令法):INCLUDE|INC:將指定的外部文件調(diào)入

PGM窗。

例如:INCR:\Myflle.SAS,回車(chē)后將D盤(pán)根目錄下一個(gè)名為

Myflle.SAS的外部文件調(diào)入PGM窗。

注1:該命令只能在PGM窗使用;如果PGM窗已有文本,則該命

令將指定的外部文件調(diào)入窗口文本的后面。

方法2(菜單法):“File”9“Open…”,找到相應(yīng)的文件,點(diǎn)“打開(kāi)”

即可。

13

上機(jī)練習(xí)題

1、SAS常用的窗口有哪三個(gè)?請(qǐng)?jiān)谌齻€(gè)基本窗口之間切換并記住這些

命令。

2、請(qǐng)?jiān)赑GM窗口中輸入如下幾行程序,提交系統(tǒng)執(zhí)行,并查看

OUTPUT窗和LOG窗中內(nèi)容,注意不同顏色的含義;并根據(jù)日志窗

中的信息修改完善程序。

datsexl;

inputtname$agesex;

cards;

xiaomin191

lidong201

nana182

prod,prontdats=exl;

run;

procprintdats=exl;

Varnameagesex;

run;

14

上機(jī)練習(xí)題(Cont.)

3、在D:盤(pán)根目錄下建立一個(gè)文件夾,取名為:

SASEX2004o將上題(題2)修改好的程序、輸出結(jié)

果及日志窗中的內(nèi)容保存在前面建立的文件夾中。

15

第一章結(jié)束

SASwebsite:WWW.SAS.COM

16

第二章SAS編程語(yǔ)言基礎(chǔ)

同其它計(jì)算機(jī)語(yǔ)言一樣,SAS語(yǔ)言也有它自己的語(yǔ)

法:關(guān)鍵詞和連結(jié)關(guān)鍵詞與其它輔助信息的規(guī)則。用戶(hù)

使用SAS語(yǔ)言來(lái)定義數(shù)據(jù)和規(guī)定對(duì)數(shù)據(jù)怎樣做統(tǒng)計(jì)分析

的問(wèn)題。由SAS語(yǔ)句組成的序列稱(chēng)為SAS程序。

A§1、SAS語(yǔ)句

一.SAS語(yǔ)句的含義

我們先來(lái)看一個(gè)實(shí)例:

17

例1:我校2001級(jí)某班16名學(xué)生4門(mén)功課成績(jī)表如下,

試計(jì)算這16名學(xué)生英語(yǔ)、生理的平均得分。

學(xué)號(hào)高數(shù)英語(yǔ)生理思品

20010873687165良好

20010874746168良好

20010875737546良好

20010876798079優(yōu)秀

20010877757168良好

20010884S5S587優(yōu)秀

20010885787975優(yōu)秀

20010886807679優(yōu)秀

20010887858082良好

20010888777175良好

20010889677371優(yōu)秀

20010890758170良好

20011118705475及格

20010893706684及格

20010894627365及格

20010909827079優(yōu)秀

18

DATAscore;PROCPRINTData=score;

INPUTnoxlx2x3x4$;VARnoxlx2x3x4;

CARDS;RUN;

20010873687165良好

20010874746168良好

20010875737546良好PROCMEANSData=score;

20010876798079優(yōu)秀VARx2x3;

20010877757168良好

20010884858587優(yōu)秀RUN;

20010885787975優(yōu)秀

20010886807679優(yōu)秀

20010887858082良好dataexl;

20010888777175良好inputname$agesex;

20010889677371優(yōu)秀cards;

20010890758170良好

xiaomin191

20011118705475及格

lidong201

20010893706684及格

20010894627365及格nana182

20010909827079優(yōu)秀r

procprintdata=exl;

run;

RUN;procprintdata=exl;

Varnameagesex;

run;第一章練習(xí)題

19

TheMEANSProcedure

VariableNMeanStdDevMinimumMaximum

x21672.87500007.872949554.000000085.0000000

x31673.00000009.791152546.000000087.0000000

在這個(gè)例子中,我們看到:

DATA,INPUT,CARDS,PROC,VAR,RUN是關(guān)鍵詞;

score是數(shù)據(jù)集名;

no,xl,x2,x3,x4是變量名;

MEANS是過(guò)程名;

Data=是MEANS語(yǔ)句中的選項(xiàng)。

現(xiàn)在,我們給出SAS語(yǔ)句的定義:

SAS語(yǔ)句是由關(guān)鍵詞、SAS名、特殊字符或運(yùn)算符組成并以分號(hào)結(jié)尾

的字符串。

20

二.幾個(gè)概念'■

LSAS關(guān)鍵詞

位于句首的用以說(shuō)明語(yǔ)句類(lèi)型和功能的單詞稱(chēng)為SAS語(yǔ)句的美

鍵詞。它是SAS語(yǔ)句的主要成份。如:PROC、DATA、VAR、RUN

等。

2.SAS名

SAS語(yǔ)句中出現(xiàn)的SAS名有很多種類(lèi),如變量名、SAS數(shù)據(jù)集名

等。

>SAS命名規(guī)則:

1)由1至8個(gè)字符組成;

2)由三種字符構(gòu)成:

英文字母A-Z,a-z,下劃線(xiàn)」數(shù)字0-9;

3)每個(gè)名字的第一個(gè)字符不能為數(shù)字;

4)SAS系統(tǒng)保留了一些名字作為特殊的變量名,這些變量名的開(kāi)頭

和結(jié)尾都用特殊字符下劃線(xiàn)表示(如_N_、_ERROR_等)。

21

3.特殊字符和運(yùn)算符

特殊字符包括:

圓括號(hào)()、單引號(hào)''、雙引號(hào)”“、美圓符號(hào)$、列指針

控制符@、行指針控制符#、冒號(hào):、句號(hào).、分號(hào);等;

運(yùn)算符包括:

加號(hào)+、減號(hào)-、乘號(hào)*、除號(hào)/、乘方**等,等號(hào)=、不等號(hào)

八=、小于號(hào)<、大于號(hào)>、小于等于號(hào)<=、大于等于號(hào)>=等。

三.語(yǔ)句格式

SAS語(yǔ)句的基本格式是:

KEYWORDParmeter...[item|item|item]options;

關(guān)鍵詞參數(shù)選項(xiàng)1選項(xiàng)2選項(xiàng)3選擇值

>關(guān)鍵詞:用以說(shuō)明語(yǔ)句類(lèi)型和功能的單詞;

>參數(shù):要求用戶(hù)提供的信息。不用括號(hào),不是任選項(xiàng)。

22

例如:INPUTxyz;

其中:INPUT是關(guān)鍵詞,它說(shuō)明要把數(shù)據(jù)提供給哪些

變量。后面跟的變量名x、y、z都是參數(shù),即要求用戶(hù)

提供的信息。

>…表示參數(shù)可以不止一個(gè)。

>[選項(xiàng)1]選項(xiàng)2|選項(xiàng)3]中的豎線(xiàn)用來(lái)分隔各選擇項(xiàng),

表示其中任選一個(gè);方括號(hào)內(nèi)的信息是可以選擇的。

例如:PROCMEANSdata=storemaxdec=3;

其中:PROC是語(yǔ)句的關(guān)鍵詞,它說(shuō)明本語(yǔ)句是過(guò)程

語(yǔ)句;MEANS是過(guò)程名,它說(shuō)明要調(diào)用的過(guò)程名稱(chēng);

data=>maxdec=都是選項(xiàng)的關(guān)鍵詞,等號(hào)后面是用戶(hù)

提供的選擇信息。

23

A§2、SAS程序

一系列SAS語(yǔ)句組成一段SAS程序。SAS程序中的

語(yǔ)句可分為兩類(lèi)步驟:DATA步和PROC步。這兩類(lèi)步

驟是所有SAS程序的模塊。通常用DATA步產(chǎn)生SAS數(shù)

據(jù)集而用PROC步對(duì)SAS數(shù)據(jù)集內(nèi)的數(shù)據(jù)進(jìn)行分析處理

并輸出結(jié)果。一段SAS程序可由一個(gè)DATA步或一個(gè)

PROC步組成;或者由DATA步和PROC步兩部分組成;

也可由多個(gè)DATA步和多PROC步組成。

24

1.DATA步(數(shù)據(jù)步)?

DATA步包括:創(chuàng)建一個(gè)或幾個(gè)新的SAS數(shù)據(jù)集的語(yǔ)句和創(chuàng)建數(shù)據(jù)

集所必須的運(yùn)算操作語(yǔ)句。每個(gè)DATA步以DATA語(yǔ)句開(kāi)頭,可以包含

任意多個(gè)SAS程序語(yǔ)句。

一個(gè)DATA步的基本語(yǔ)句有:

DATA語(yǔ)句:表示創(chuàng)建SAS數(shù)據(jù)集;

INPUT語(yǔ)句:對(duì)SAS數(shù)據(jù)集中的變量進(jìn)行描述;

CARDS語(yǔ)句:用來(lái)指示數(shù)據(jù)行的開(kāi)始;

;語(yǔ)句:表示數(shù)據(jù)行的結(jié)束。

請(qǐng)看如下的例子:

25

DATA關(guān)鍵詞告訴系

統(tǒng),要?jiǎng)?chuàng)建一個(gè)SAS數(shù)、"DATAscore;

據(jù)集,命名為score

INPUTnoxlx2x3x4$;

/CARDS.-------一CARDS關(guān)鍵詞告訴系統(tǒng),其后

INPUT關(guān)鍵詞告訴系J緊隨著的便是數(shù)據(jù)。

統(tǒng),數(shù)據(jù)在程序流中,

并且指明數(shù)據(jù)所對(duì)應(yīng)

的變量名及類(lèi)型。$符20010873687165良好

號(hào)說(shuō)明它前面的一個(gè)20010874746168良好

變量為字符型。

20010875737546良好

20010876798079優(yōu)秀

20010877757168良好

20010884858587優(yōu)秀\

20010885787975優(yōu)秀\

優(yōu)秀,

20010886807679\___

20010887858082良好數(shù)據(jù)行,數(shù)據(jù)源中不能有分號(hào)(;)。

20010888777175良好

20010889677371優(yōu)秀

20010890758170良好

20011118705475及格

;表示數(shù)據(jù)行\(zhòng)20010893706684及格

\20010894

的結(jié)束627365及格

\20010909

827079優(yōu)秀

RUN;

26

2.PROC步(過(guò)程步)

>PROC步要求SAS系統(tǒng)從過(guò)程庫(kù)中調(diào)出一個(gè)過(guò)程模塊并執(zhí)行它。

>PROC步以PROC語(yǔ)句開(kāi)始,其后緊跟一個(gè)過(guò)程名(英文關(guān)鍵字);

一個(gè)過(guò)程步可以包含多個(gè)相應(yīng)的SAS語(yǔ)句。

例如:

PROCMEANSData=score;

VARx2x3;

PROCPRINTData=score;

VARxlx3x4;

注意:一個(gè)完整的SAS程序必須以RUN語(yǔ)句結(jié)尾方能提交運(yùn)行。

27

A§3、編寫(xiě)SAS程序

DATAscore;

INPUTnoxlx2x3x4iPROCPRINTData=score;

CARDS;iVARnoxlx2x3x4;

iRUN;

20010873687165良好I

20010874746168良好I

I

20010875737546良好

20010876798079優(yōu)秀!PROCMEANSData二score;

20010877757168良好!VARxlx2x3;

20010884858587優(yōu)秀

20010885787975優(yōu)秀!RUN;

20010886807679優(yōu)秀I

20010887858082良好I

20010888777175良好

20010889677371優(yōu)秀

20010890758170良好<以上一個(gè)DATA步和

20011118705475及格

20010893706684及格Q兩個(gè)PROC步就構(gòu)成了

20010894627365及格

20010909827079優(yōu)秀一個(gè)SAS程序。

RUN;

28

上面SAS程序的輸出結(jié)果如下:

TheSASSystem09:22Monday,August200410

Obsnoxlx2x3x4

120010873687165良好

220010874746168良好

320010875737546良好

420010876798079優(yōu)秀

520010877757168良好

620010884858587優(yōu)秀

720010885787975優(yōu)秀

820010886807679優(yōu)秀

920010887858082良好

1020010888777175良好

1120010889677371優(yōu)秀

1220010890758170良好

1320011118705475及格

1420010893706684及格

1520010894627365及格

1620010909827079優(yōu)秀

TheMEANSProcedure

VariableNMeanStdDevMinimumMaximum

——

x21672.87500007.872949554.000000085.0000000

x31673.00000009.791152546.000000087.0000000

29

1.SAS程序的書(shū)寫(xiě)方法

(1)書(shū)寫(xiě)格式

?SAS語(yǔ)句可以從一行上的任意位置開(kāi)始;

?幾個(gè)SAS語(yǔ)句可以寫(xiě)在同一行上;

?一個(gè)語(yǔ)句也可以寫(xiě)成幾行,只要語(yǔ)句中的單詞不被斷開(kāi)即可;

?在一個(gè)語(yǔ)句中各項(xiàng)之間至少要有一個(gè)空格;

?一些特殊符號(hào)(如等號(hào)=,加號(hào)+)可以占據(jù)空格的位置,如:

total=a+10;與total=a+10;

是等價(jià)的;

?SAS語(yǔ)句用大寫(xiě)字母、小寫(xiě)字母或大、小寫(xiě)混合書(shū)寫(xiě)均可。

⑵注釋

SAS語(yǔ)句中有一個(gè)注釋語(yǔ)句,形式為:

/*注釋內(nèi)容*/

凡是空格可以出現(xiàn)的地方,以上形式的注釋語(yǔ)句也能出現(xiàn)。例如:

PROCSORT/*對(duì)數(shù)據(jù)集排序*/;

就是一個(gè)合法的語(yǔ)句。

30

⑶變量的縮寫(xiě)

變量在數(shù)據(jù)集中的實(shí)際位置按它們第一次出現(xiàn)的

次序被定義。

例如:前面的例子的INPUT語(yǔ)句中,no被定義為第一

個(gè)變量,接著是xl,x2,x3,x4。在一些SAS語(yǔ)句中,需要

對(duì)變量進(jìn)行集中處理,SAS采用如下的方式來(lái)解決這

個(gè)問(wèn)題:

>形如xl,x2.x3…xn的帶序號(hào)的變量名,縮寫(xiě)為xl-xn;

>形如xlab.x2.x3.d的不帶序號(hào)的變量名,縮寫(xiě)為xl--d;

>特殊的SAS變量,_numeric_表示所有數(shù)值變量;

_character_表示所有字符變量;

_all_表示所有變量。

31

2.SAS程序的的執(zhí)行與輸出'

>程序的執(zhí)行

當(dāng)我們?cè)赑GM窗口將程序輸入完畢,檢查修改后就

可以提交給SAS系統(tǒng)執(zhí)行。在LOG窗口顯示程序執(zhí)行中

記錄的信息,它包括:執(zhí)行哪些語(yǔ)句;生成的數(shù)據(jù)集

中變量個(gè)數(shù)及觀測(cè)個(gè)數(shù)是多少;程序執(zhí)行所消耗的時(shí)

間及出錯(cuò)信息等。

>SAS過(guò)程的輸出

前例提交執(zhí)行以后,DATA步產(chǎn)生一個(gè)名為score的

SAS數(shù)據(jù)集;后面的兩個(gè)PROC步產(chǎn)生的結(jié)果輸出到

OUTPUT窗口(如前例的輸出)。

33

>§4SAS表達(dá)式

前面簡(jiǎn)單介紹了SAS語(yǔ)句和SAS程序的構(gòu)成。要靈活的完成

日常的數(shù)據(jù)管理和統(tǒng)計(jì)分析工作,還得很好掌握SAS表達(dá)式。

SAS表達(dá)式是由一系列算符和運(yùn)算對(duì)象形成的一個(gè)指令集,

它被執(zhí)行后產(chǎn)生一個(gè)目標(biāo)值。運(yùn)算對(duì)象是SAS變量和SAS常數(shù);

算符是特殊的運(yùn)算符、函數(shù)和括號(hào)。

表達(dá)式分為簡(jiǎn)單表達(dá)式和復(fù)合表達(dá)式。下列式子都是表達(dá)式。

X+13LOG(X)LOGIO(X)P/A*100AGE<100

1-EXP(N/(N-1))A=B=CSTATE-CA'

在DATA步中,為了對(duì)變量進(jìn)行變換,建立新變量、條件處

理、計(jì)算新值及指定新值,都需要使用SAS表達(dá)式。

一.SAS常數(shù)

SAS常數(shù)用來(lái)表示固定的值,它或者是一個(gè)數(shù)字,或者是用

引號(hào)引起來(lái)的字符串、或者是其它特殊記號(hào)。

34

SAS使用的常數(shù)有五種類(lèi)型:數(shù)值常量、字符常量、

日期、時(shí)間和日期時(shí)間常量、十六進(jìn)制數(shù)值常量、十

六進(jìn)制字符常量。我們主要介紹數(shù)值常量和字符常量。

1.數(shù)值常量:

一個(gè)數(shù)值常量就是出現(xiàn)在SAS語(yǔ)句里的數(shù)字。很多

數(shù)值常量完全像通常的數(shù)據(jù)值一樣書(shū)寫(xiě)。數(shù)值常量可

以包括小數(shù)點(diǎn),負(fù)號(hào)和E記號(hào)。

例如:1-51.231.2E230.10.5E-10。

用E表示法時(shí),如2E4,它表示2x10%或者20000。

SAS系統(tǒng)中,缺失值用小數(shù)點(diǎn)來(lái)(.)表示。

35

2.字符常量:

字符常量是由(單)引號(hào)括起來(lái)的1?200個(gè)字符組成的

字符串.

例如,在下面的語(yǔ)句中:

IFname='TOM'THENDO;

'TOM,就是一個(gè)字符常量。

如果字符常量含有引號(hào),則用兩個(gè)連續(xù)的單引號(hào)

來(lái)處理。例如,字符值為T(mén)OM'S時(shí),輸入:

name='TOM''S'

缺失的字符常量值為空字符,表示為‘'(兩個(gè)連續(xù)

的單引號(hào))。

36

二SAS變量:

描述給定特征的數(shù)值集合的指標(biāo)稱(chēng)為變量。

SAS變量的特征:

變量名、類(lèi)型、存儲(chǔ)長(zhǎng)度、標(biāo)簽、輸入格式、輸出格式

#VariableTypeLenPosFormatInfonnatLabel

1nameChai、8245NameofStudent

2ageNum804.1Age

3sexNum88SEXFMT.Sex

4expendNum816C0MMA8.D0LLAR10.Expenditurein2003

存儲(chǔ)長(zhǎng)度指變量在存儲(chǔ)時(shí)所需要的字節(jié)數(shù)。默認(rèn)情況下所有的變量都定

義為8字節(jié)。字符變量的長(zhǎng)度可為1-200字節(jié),數(shù)值變量的長(zhǎng)度可為3-8字

節(jié)。

標(biāo)簽是對(duì)變量的補(bǔ)充說(shuō)明,可以為任意字符,長(zhǎng)度可多達(dá)257個(gè)字符。

37

Variables

nox1age1x2x3x4x5

>

11151'44-i-1

2i240342i

33518311

44第:8311

552835181

6617053~r-2

ObservationsT------96-110I422

住8266-LR.121

Value"g~2

99—180._2

10101一番〕.5J381

1111w708231

SAS數(shù)據(jù)集(部分)

38

輸入輸出格式'

丁「____濠:一

Informatformat|蔡式化的一|

1原始數(shù)據(jù)值.?SAS

輸出格式)"變量值

輸入格式)變量的值ISAS

InformatiFormat

_____________dollarlO.__________Jcomma8j廠

$548,231\-------------,548231;---------.548,231

jInformatjFormat

Date9i-;MMDDYY10.

25JAN2004---------?16095」------------?01/25/2004

39

日期和時(shí)間數(shù)據(jù)的存儲(chǔ)

SAS采用數(shù)值存儲(chǔ)日期和時(shí)間形式的數(shù)據(jù)。

在默認(rèn)情況下,SAS系統(tǒng)以0代表1960年1月1日0時(shí)。

其它日期在SAS系統(tǒng)中被存儲(chǔ)為與該日期相差的天數(shù)。

例如,1960年1月3日,在系統(tǒng)中存為2。

2004年1月25日,在系統(tǒng)中存為16095。

注意:為了使數(shù)值型變量顯示日期形式,必須使用日期型

的輸出格式,同樣地為了以日期形式輸入日期必須使用

日期型的輸入格式。

40

SAS變量分為兩類(lèi),數(shù)值變量(Num)與字符變量(Char)。

>數(shù)值型變量只能取數(shù)值為值。可以有正負(fù)號(hào)及小數(shù)點(diǎn)

(+、—、?),但不能看逗號(hào)(,)o

數(shù)值型是SAS的默認(rèn)變量類(lèi)型,默認(rèn)長(zhǎng)度為8位。

>字符型變量可以取字符、字母、特殊字符以及數(shù)字為

值。

在DATA步中某些SAS語(yǔ)句所使用的變量名后跟一個(gè)

美元符號(hào)($),即表明該變量是字符型變量,如、

name$或name$。如果變量后不加$符號(hào),SAS將該變

量認(rèn)為數(shù)值型。因此,對(duì)字符型變量應(yīng)加$符號(hào)予以說(shuō)

明。

在SAS中一個(gè)字符變量的取值可以有1—200個(gè)字符

長(zhǎng),默認(rèn)長(zhǎng)度為8個(gè)字符長(zhǎng)。

41

三SAS算符

SAS算符是一些符號(hào),它們要求作比較、算術(shù)運(yùn)

算或邏輯運(yùn)算。

SAS使用兩種主要類(lèi)型的算符:

前綴算符和中綴算符

?前綴算符用于變量、常數(shù)、函數(shù)或者用括號(hào)括起來(lái)的表達(dá)式。

例如:+Y-25-COS(A)-(xl+x2-100)

前綴算符有:加號(hào),減號(hào),NOT和符號(hào)屋

?中綴算符作用在算符兩邊的運(yùn)算對(duì)象上,例如6<8o

中綴算符一般分為四類(lèi):算術(shù)算符、比較算符、邏輯算符和

其它算符(最大、最小和連接)。

42

1.算術(shù)算符:

算術(shù)算符表示執(zhí)行一種算術(shù)運(yùn)算,包括:

**乘方*相乘/相除+相加-相減

如果算術(shù)算符有一個(gè)運(yùn)算對(duì)象是缺失值,運(yùn)算結(jié)果也是缺失值。

例如,y=x3+.;貝Uy的值為缺失值(.)

2.比較算符:

比較算符確定兩個(gè)量之間的一種關(guān)系,如果這種關(guān)系成立,則

輸出結(jié)果為1(真);如果它不成立,則輸出結(jié)果為0(假)。比較算符包

括:

=(EQ)等于A=(NE)不等于

>(GT)大于<(LT)小于

>=(GE)大于等于v=(LE)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論