




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、1.1 SAS語言組件1.1.1 SAS文件使用SAS時(shí)候會碰到不同類型的文件,如SAS數(shù)據(jù)集、SAS目錄冊,這些由SAS創(chuàng)建、儲存、管理的文件就是SAS文件。所有的SAS文件都保存在SAS邏輯庫中。最常用的SAS文件就是SAS數(shù)據(jù)集和SAS目錄冊。1.1.2 SAS外部文件SAS不能直接識別的數(shù)據(jù)文件稱之為外部文件,外部文件一般用于儲存數(shù)據(jù)。外部文件一般用來儲存以下內(nèi)容:· 要讀入SAS數(shù)據(jù)文件的原始數(shù)據(jù);· SAS程序語句· 過程步輸出1.1.3 DNMS文件SAS軟件可以和其他數(shù)據(jù)庫產(chǎn)品進(jìn)行數(shù)據(jù)文件轉(zhuǎn)換。比如數(shù)據(jù)文件方面使用最廣泛的DBMS(database
2、 management system)數(shù)據(jù)庫系統(tǒng)文件。1.1.4 SAS語言元素SAS語言由語句、表達(dá)式、選項(xiàng)、格式,以及其他編程語言名稱類似的函數(shù)組成:SAS語句有兩種語句:1 / 29· 數(shù)據(jù)步· 過程步數(shù)據(jù)步是一組語句組合,可以進(jìn)行以下操作:· 從外部文件讀取數(shù)據(jù)· 將數(shù)據(jù)寫入到外部文件中· 讀取SAS數(shù)據(jù)文件和視圖· 創(chuàng)建SAS數(shù)據(jù)文件和視圖過程步用來對SAS數(shù)據(jù)集進(jìn)行分析和產(chǎn)生報(bào)表。比如對數(shù)據(jù)集進(jìn)行分析、畫圖、查詢和打印等操作。1.1.5 SAS宏工具BASE SAS 軟件包括SAS宏功能,可以用來客戶化以及拓展SAS程序,
3、減少重復(fù)代碼的輸入。宏就是包含被編譯的宏程序語句和文本的SAS文件。可以使用宏自動(dòng)的生成SAS語句和命令,在日志中寫入信息,建立和改變宏變量的值。1.2 SAS文件系統(tǒng)1.2.1 邏輯庫SAS邏輯庫由一組SAS文件組成。SAS軟件系統(tǒng)的信息。SAS軟件系統(tǒng)的信息組織有兩層,第一層是SAS邏輯層,第二層是SAS文件。SAS邏輯庫是一個(gè)邏輯概念,本身不是物理實(shí)體,它對于的實(shí)體是操作系統(tǒng)下的一個(gè)文件夾或幾個(gè)文件夾中的一組SAS文件。1.邏輯庫名與引用SAS文件邏輯庫名是SAS名。長度的=不能超過8B 。如:ResDat建立SAS邏輯庫的方法:· 用菜單操作;· 用LIBNAME語
4、句語句格式:LIBNAME libref <engine> 'SAS-data-library'語法說明:LIBNAME :邏輯庫名libref <engine> 引擎名稱'SAS-data-library' 邏輯庫對應(yīng)的物理地址2.臨時(shí)庫和永久庫臨時(shí)邏輯庫是指它的內(nèi)容只在啟動(dòng)SAS時(shí)存在,一旦退出SAS時(shí)內(nèi)容完全被刪除。系統(tǒng)默認(rèn)的臨時(shí)邏輯庫為WORK,引用臨時(shí)庫WOR中文件時(shí),可以不加庫名WORK永久邏輯庫是指它的內(nèi)容在SAS關(guān)閉對話之后仍舊保留,直到再次修改或刪除。SAS系統(tǒng)中除了WORK以外的邏輯庫都是永久庫。3.庫引擎庫引擎的功能
5、包括:· 讀取和寫入數(shù)據(jù)· 列出庫中的文件· 刪除和重命名文件SAS通過不同庫引擎讀寫不同格式的文件。每個(gè)SAS引擎都有著自身的運(yùn)行特性。· 運(yùn)行由其他版本SAS軟件生成的文件;· 讀取由其他軟件生成的數(shù)據(jù)文件;· 存儲和訪問硬盤或者磁帶上的文件;· 決定文件中的變量和觀測如何放置;· 將文件從物理位置地址讀取放入到內(nèi)存中;· 在不同的操作系統(tǒng)之間傳輸SAS文件1.2.2 數(shù)據(jù)集1.數(shù)據(jù)集分類數(shù)據(jù)集有兩類:· SAS數(shù)據(jù)文件(同時(shí)描述信息和存儲數(shù)據(jù)值)· SAS數(shù)據(jù)視圖(不實(shí)際存儲數(shù)據(jù)
6、,只包含表的描述信息以及一組用來讀取數(shù)據(jù)的查詢語句)以上兩個(gè)數(shù)據(jù)文件在同一級目錄或邏輯庫下時(shí)不能同名。2.數(shù)據(jù)集構(gòu)成· 描述信息· 數(shù)據(jù)值SAS數(shù)據(jù)集的一行被稱之為觀測,一列被稱之為變量,包括一組有著相同的特征的值。SAS使用缺失值表示一個(gè)觀測中某個(gè)變量值得缺失。1.3.3 數(shù)據(jù)文件SAS數(shù)據(jù)文件是包含描述信息和數(shù)據(jù)值的SAS數(shù)據(jù)集。一般來說,SAS數(shù)據(jù)文件分類如下:· 普通的SAS數(shù)據(jù)文件:SAS格式的數(shù)據(jù)文件· 接口數(shù)據(jù)文件:以其他數(shù)據(jù)軟件格式儲存的數(shù)據(jù)的數(shù)據(jù)文件。· 數(shù)據(jù)文件實(shí)際儲存數(shù)值,視圖只是包含表的描述信息以及一組用來讀取數(shù)據(jù)的查詢
7、語句。· 數(shù)據(jù)文件是靜態(tài)的,視圖是動(dòng)態(tài)的。· SAS數(shù)據(jù)集可以保存的在磁帶或者其他的存儲媒介上,但是數(shù)據(jù)視圖由于其他動(dòng)態(tài)特性,不能保存在磁帶上。· SAS數(shù)據(jù)視圖是只讀性的,不可以修改,而一些SQL視圖可以被修改。· SAS數(shù)據(jù)文件可以被壓縮,而視圖則不可以。1.2.4 數(shù)據(jù)視圖1.數(shù)據(jù)視圖定義SAS數(shù)據(jù)視圖就是用來從其他文件中讀取數(shù)據(jù)的一種SAS文件。SAS視圖一般分為兩種:· Native View ,由數(shù)據(jù)步或者SQL過程創(chuàng)建· Interface View,由SAS/ACCESS軟件創(chuàng)建,可以讀取其他數(shù)據(jù)庫管理系統(tǒng)(DBMS)
8、的中的數(shù)據(jù)庫。2.何時(shí)使用視圖數(shù)據(jù)視圖占用額外的運(yùn)行時(shí)間,數(shù)據(jù)文件占用額外的硬盤空間。3.數(shù)據(jù)視圖的使用優(yōu)勢· 可以使用連接多個(gè)表的視圖來合并數(shù)據(jù)集· 數(shù)據(jù)視圖可以節(jié)省大量的空間· 數(shù)據(jù)視圖可以保證讀取的數(shù)據(jù)集永遠(yuǎn)都是新的。· 更改一個(gè)數(shù)據(jù)視圖只需要改變這個(gè)視圖的查詢語句· 使用SAS軟件,視圖可以將多個(gè)不同的主機(jī)上的數(shù)據(jù)文件整合,以整體的形式呈現(xiàn)。4.數(shù)據(jù)步視圖數(shù)據(jù)步視圖包含用于多個(gè)數(shù)據(jù)源中讀取數(shù)據(jù)的數(shù)據(jù)步程序,這些數(shù)據(jù)源包含以下幾種:· 原始數(shù)據(jù)文件· SAS數(shù)據(jù)文件· PROC SQL視圖· SAS
9、/ACCESS視圖· DB2、ORACLE或者其他DBMS數(shù)據(jù)語法格式:5. PROC SQL視圖PROC SQL視圖為一個(gè)帶有名稱的PROC SQL 查詢。可以讀寫的數(shù)據(jù)源同數(shù)據(jù)步視圖。例如:1.2.5 存儲編譯的DATA步程序1.定義存儲編譯的DATA步程序是包含已經(jīng)被編譯過DATA步程序并儲存在SAS邏輯庫中的程序文件。文件類型是程序。2.創(chuàng)建存儲編譯的DATA步程序語句格式:語法說明:data-set-name 數(shù)據(jù)集名稱stored-program-name 存儲編譯的DATA步程序名稱password-option 給DATA步程序名稱分配一個(gè)密碼source-optio
10、n 存儲或編譯源碼1.2.6 其他SAS文件1.表詞典2.目錄冊文件1.3 SAS語言元素主要的語言元素包括:· 數(shù)據(jù)集選項(xiàng)· 輸出和輸入格式· 函數(shù)和CALL子程序· 應(yīng)用響應(yīng)測量宏· 語句· SAS系統(tǒng)選項(xiàng)· 表達(dá)式1.3.1 數(shù)據(jù)集選項(xiàng)括號中的數(shù)據(jù)集選項(xiàng)可以對數(shù)據(jù)集進(jìn)行如下操作:· 重新命名變量;· 選擇需要的觀測;· 輸出數(shù)據(jù)集中保留或刪除的變量;· 數(shù)據(jù)集加密;語句格式:1.3.2 輸入和輸出格式輸出格式format是SAS用來確定如何輸出或?qū)懗鰯?shù)據(jù)值的指令,用FORMAT控
11、制數(shù)據(jù)值在輸出時(shí)使用的格式,如YYMMDD10,格式將一個(gè)日期數(shù)輸出讀入到新的數(shù)據(jù)集中。輸出格式informat是SAS用來確定如何將數(shù)據(jù)讀入變量的指令。語句格式:<$>format<w>.<d><$>format<w>.<d>格式說明:$ 指定為字符格式,如果該項(xiàng)空缺,則默認(rèn)是數(shù)值格式format 規(guī)定為有效的SAS輸出格式informat 規(guī)定為有效的SAS輸入格式w 設(shè)定輸入輸出的長度,一般來說是數(shù)據(jù)所占的列的數(shù)目d 設(shè)定數(shù)據(jù)值數(shù)據(jù)中華小數(shù)點(diǎn)的位數(shù)1.3.3 函數(shù)和CALL子程序1.函數(shù)定義SAS哈數(shù)對數(shù)據(jù)參數(shù)進(jìn)行計(jì)
12、算處理并返回一個(gè)值。在BASE SAS軟件中,可以在數(shù)據(jù)步程序語句、WHERE表達(dá)式、宏語句、SQL語句以及一些統(tǒng)計(jì)過程的語句中的使用函數(shù)。2.CALL子程序定義CALL子程序用來改變變量值,或執(zhí)行一些系統(tǒng)功能,CALL子程序類似于函數(shù),但是不能再賦值語句使用,所有的SAS CALL子程序都只能被CALL語句使用。也就是所有的CALL子程序都要放在CALL關(guān)鍵詞后。1.3.4 語句SAS語句就是一系列關(guān)鍵詞、SAS名稱、算符,以及特殊字符的組合。所有的SAS語以分號結(jié)尾。SAS語句一般分為 數(shù)據(jù)步語句 與 過程步語句 ,以及可以用在SAS程序任何地方的全局通用語句。KEWWORD parame
13、ter . <item1|item2.|itemn>options;關(guān)鍵詞 參數(shù). <項(xiàng)目1或項(xiàng)目2.項(xiàng)目n>選項(xiàng);其中:· 粗體表示必須按顯示形式書寫的關(guān)鍵詞;· 一般字體表示用戶提供的信息;· < >表示括號內(nèi)的信息可選;· | 表示任選1.可執(zhí)行數(shù)據(jù)步語句和聲明數(shù)據(jù)步語句2.全局通用語句1.3.5 SAS系統(tǒng)選項(xiàng)系統(tǒng)選項(xiàng)用來控制SAS的運(yùn)行方式,如SAS系統(tǒng)啟動(dòng)、軟硬件的連接,SAS程序的運(yùn)行等。語句格式:OPTIONS options(s):option設(shè)定一個(gè)或多個(gè)系統(tǒng)選項(xiàng),任何系統(tǒng)選項(xiàng)都有一個(gè)默認(rèn)設(shè)置。2.
14、4 表達(dá)式表達(dá)式由一系列操作符和操作對象構(gòu)成,產(chǎn)生一個(gè)目標(biāo)值。使用表達(dá)式可以對變量作變換和賦值,創(chuàng)建新變量,計(jì)算新數(shù)值以及控制條件語句的運(yùn)行等。操作對象有:· 變量;· 常數(shù)。操作符包括:· 算術(shù)算符· 比較算符· 邏輯算符· SAS函數(shù)· 括號例 2.7 表達(dá)式里允許有空格Y=X+10;Y= X+ 10; /*例中,兩語句等價(jià)*/2.4.1 SAS常數(shù)SAS常數(shù)是SAS系統(tǒng)可以識別的一些固定值。SAS常數(shù)值包括:· 數(shù)字;· 引號括起來的字符串;· 其他特殊記號SAS常數(shù)的5種類型:·
15、; 數(shù)值常數(shù);· 字符常數(shù);· 日期時(shí)間數(shù)值常數(shù);· 十六進(jìn)制數(shù)值常數(shù)和字符常數(shù);1.數(shù)值常數(shù)數(shù)值常數(shù)的表示格式包括:· 標(biāo)準(zhǔn)格式: 1,01,+1,-1,1,1· 科學(xué)計(jì)數(shù)法:1,1e11,1.2e· 十六進(jìn)制格式:1ex,12x,9x2.字符常數(shù)字符常數(shù)通常由單引號括起來的132767個(gè)字符串組成。如果字符常數(shù)內(nèi)含有引號,引用時(shí),要么它的引號用兩個(gè)連續(xù)的單引號,要么用一個(gè)雙引號。3.日期時(shí)間常數(shù)將日期時(shí)間值表示為常數(shù)時(shí),要使用相應(yīng)的格式值。格式值帶單引號,后面跟一個(gè)D(日期),T(時(shí)間),DT(日期時(shí)間)。2.4.2 SAS算符1
16、.算術(shù)算符表達(dá)式中有一個(gè)運(yùn)算對象是缺失值時(shí),結(jié)果也是缺失值。運(yùn)行結(jié)果:2.比較算符比較準(zhǔn)則:· 數(shù)值和字符都可以· 結(jié)果為真賦值為1,假賦值為0;· 字符值從左到右逐個(gè)按ASCII碼排列順序進(jìn)行比較· 缺失值參加比較時(shí)。它比任何有效值都小。if x<y then x=5;else c=12;3.邏輯運(yùn)算符4.其他運(yùn)算符5. 運(yùn)算次序· 先計(jì)算括號里面的表達(dá)式· 先執(zhí)行較高優(yōu)先級的運(yùn)算· 相同優(yōu)先級的算符,先執(zhí)行左邊的運(yùn)算。2.5 SAS變量2.5.1 變量類型SAS變量分為數(shù)值變量和字符變量1.數(shù)值變量數(shù)值變量是SAS
17、系統(tǒng)以浮點(diǎn)(floating-point)方式存儲的數(shù)據(jù),數(shù)值變量包括日期和時(shí)間。2.字符變量字符變量可以由阿拉伯字母、數(shù)字09以及其他一些特殊的字符組成。2.5.2 變量屬性SAS變量的屬性包括長度、輸入輸出格式和標(biāo)簽,未設(shè)定屬性的變量在他們第一次出現(xiàn)時(shí)由系統(tǒng)給出。2.5.3 變量列表以及其縮寫規(guī)則許多的SAS語句都需要規(guī)定變量,即按順序列出變量名。了解變量列表的縮寫規(guī)則,會克服復(fù)雜變量引用帶來的麻煩。SAS程序中規(guī)定了完整的變量列表后,就可以使用縮寫的變量列表。2.5.4 創(chuàng)建變量DATA步驟創(chuàng)建變量的方式包括:· 使用賦值語句;· 使用INPUT語句;· 使
18、用FORMAT或INFORMAT語句;· 使用LENGTH語句;· 使用ATTIRB語句1.使用賦值語句如果等號左邊的變量不存在于數(shù)據(jù)集中,則賦值語句會產(chǎn)生一個(gè)新的變量,在沒有規(guī)定明確格式的情況下,新的變量格式采用系統(tǒng)默認(rèn)的格式。data a;x=1;run; /*數(shù)據(jù)集a中有個(gè)變量x,值為1*/2.使用INPUT語句例:3. 使用FORMAT或INFROMAT語句2.5.5 變量類型轉(zhuǎn)換1.字符自動(dòng)轉(zhuǎn)換為數(shù)值2.函數(shù)INPUT將字符轉(zhuǎn)換為數(shù)值3.數(shù)值自動(dòng)轉(zhuǎn)換為字符4.函數(shù)PUT將數(shù)值轉(zhuǎn)換為字符2.5.6 自動(dòng)變量自動(dòng)變量是由數(shù)據(jù)步語句自動(dòng)創(chuàng)建的。這些自動(dòng)變量被加入到程序數(shù)
19、據(jù)向量(PDV)中,但是并不輸出到數(shù)據(jù)集中,自動(dòng)變量在重復(fù)過程中被保留,而不是被設(shè)定為缺省。2.6 錯(cuò)誤類型與處理SAS系統(tǒng)能夠檢查出錯(cuò)誤類型有:· 句法錯(cuò)· 詞義錯(cuò)· 運(yùn)行錯(cuò)· 數(shù)據(jù)錯(cuò)· 與宏有關(guān)的錯(cuò)SAS系統(tǒng)提交含有錯(cuò)誤的程序后,LOG窗口會顯示的信息有:· 出錯(cuò)的詞;· 錯(cuò)誤的可能位置· 對錯(cuò)誤的說明2.6.1 句法錯(cuò)句法(SYNTAX)錯(cuò)誤是由程序含有不符合SAS語言的規(guī)則引起。最常見的語法錯(cuò)誤有:· 關(guān)鍵詞拼寫錯(cuò)誤· 遺漏RUN語句· 引號或括號不配對· 選項(xiàng)無效日
20、志信息:2.6.2 詞義錯(cuò)詞義錯(cuò)的類型有:· 變量名拼寫錯(cuò)誤· 不正確的引用log運(yùn)行日志:2.6.3 運(yùn)行出錯(cuò)經(jīng)常運(yùn)行出錯(cuò)的情況有:· INPUT語句與數(shù)據(jù)不匹配· 非法的數(shù)學(xué)運(yùn)算· 對BY組分析處理時(shí)沒有相應(yīng)的分類排序· 引用不存在的數(shù)組元素· 用INFILE和FILE語句打開或關(guān)閉文件時(shí)出錯(cuò)· 函數(shù)的自變量不合法LOG窗口顯示的運(yùn)行錯(cuò)誤信息包括:· 一個(gè)出錯(cuò)信息· 存儲在輸入緩沖區(qū)中的值· 發(fā)生錯(cuò)誤程序數(shù)據(jù)向量的內(nèi)容· 用NOTE揩油的一個(gè)注解日志信息:2.6.4 數(shù)據(jù)
21、錯(cuò)當(dāng)數(shù)據(jù)不適合的相應(yīng)的SAS語句時(shí),就會報(bào)錯(cuò)。帶有INPUT語句的SAS程序可能產(chǎn)生數(shù)據(jù)錯(cuò)。LOG窗口顯示的數(shù)據(jù)錯(cuò)信息包括:· 一個(gè)注釋描述這個(gè)錯(cuò)誤· 存儲在輸入緩沖區(qū)中的值· 存儲在程序數(shù)據(jù)向量里的值日志窗口信息:2.7 SAS輸出1.SAS日志SAS日志信息包括:· 提交的運(yùn)行的程序語句· 程序創(chuàng)建的數(shù)據(jù)集· 程序運(yùn)行過程中的注釋、警告或錯(cuò)誤信息;· 每個(gè)數(shù)據(jù)集包括的變量和觀測的個(gè)數(shù);· 每個(gè)步驟運(yùn)行的時(shí)間2.程序結(jié)果絕大多數(shù)SAS過程步和一些數(shù)據(jù)步的結(jié)果,是可以發(fā)送文件,或者打印出來,使用ODS的話,還可以將結(jié)果輸送到網(wǎng)頁中。3.SAS控制臺日志激活SAS日志后,當(dāng)系統(tǒng)初始化或結(jié)束重大錯(cuò)誤時(shí)才會用到SAS控制日志。2.8 SAS程序SAS程序由多個(gè)SAS語句構(gòu)成,SAS程序中語句可以分為兩類步驟:· 數(shù)據(jù)步·
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東工商學(xué)院《服務(wù)禮儀理論教學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 貴州水利水電職業(yè)技術(shù)學(xué)院《中醫(yī)護(hù)理技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶五一職業(yè)技術(shù)學(xué)院《交通運(yùn)輸安全2》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海中僑職業(yè)技術(shù)大學(xué)《建筑營造》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶建筑工程職業(yè)學(xué)院《跨媒介創(chuàng)意2》2023-2024學(xué)年第二學(xué)期期末試卷
- 北京工商大學(xué)嘉華學(xué)院《管理學(xué)原理B1》2023-2024學(xué)年第二學(xué)期期末試卷
- 新疆現(xiàn)代職業(yè)技術(shù)學(xué)院《教育學(xué)研究新進(jìn)展》2023-2024學(xué)年第二學(xué)期期末試卷
- 大連海洋大學(xué)《插畫基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海工商職業(yè)技術(shù)學(xué)院《陶瓷產(chǎn)品設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南交通工程學(xué)院《數(shù)字電路與數(shù)字邏輯》2023-2024學(xué)年第二學(xué)期期末試卷
- 地鐵站裝修報(bào)價(jià)
- 《寄冰》-完整版課件
- 內(nèi)科學(xué)-骨髓增生異常綜合征(MDS)
- 辦公室事故防范(典型案例分析)
- 地球的不同圈層英文版
- 八年級下冊英語七選五專項(xiàng)講練一
- 兩班倒排班表excel模板
- ISO31000風(fēng)險(xiǎn)管理標(biāo)準(zhǔn)中文版
- 《S7-1200-PLC-編程及應(yīng)用技術(shù)》試題試卷及答案2套
- 電土施表4-18混凝土結(jié)構(gòu)工程養(yǎng)護(hù)記錄.docx
- 醫(yī)療質(zhì)量與安全管理委員會組成與職責(zé)
評論
0/150
提交評論