SAS矩陣運(yùn)算語言(IML)_第1頁
SAS矩陣運(yùn)算語言(IML)_第2頁
SAS矩陣運(yùn)算語言(IML)_第3頁
SAS矩陣運(yùn)算語言(IML)_第4頁
SAS矩陣運(yùn)算語言(IML)_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、SAS矩陣運(yùn)算語言(IML)1. IML中矩陣運(yùn)算的基礎(chǔ)知識(shí)IML內(nèi)容概述矩陣的命名矩陣的創(chuàng)建矩陣的運(yùn)算矩陣下標(biāo)的使用1.1 IML內(nèi)容概述在SAS系統(tǒng)中,矩陣的操作與運(yùn)算功能由IML(interactive matrix language)模塊來實(shí)現(xiàn)。SAS/IML是SAS系統(tǒng)一個(gè)非常重要的模塊,它有著一套強(qiáng)大、靈活的運(yùn)算語言。在IML的環(huán)境下不但可以進(jìn)行矩陣的各種運(yùn)算,而且還可以與DATA步一起使用實(shí)現(xiàn)各種復(fù)雜的計(jì)算和操作功能。在IML中,可以通過矩陣語言直接讀取外部文件,并把此文件寫成矩陣的格式,從而進(jìn)行矩陣運(yùn)算;也可以直接讀取SAS數(shù)據(jù)集,并把此數(shù)據(jù)集寫成矩陣的格式進(jìn)行矩陣運(yùn)算。1.2

2、 矩陣的命名1.2 矩陣的命名1.3 矩陣的創(chuàng)建在IML中創(chuàng)建矩陣的方式有三種:一種方法是直接輸入創(chuàng)建矩陣;另一種是利用IML中的函數(shù)來產(chǎn)生矩陣;第三種是在IML的環(huán)境中把外部文件或SAS數(shù)據(jù)集轉(zhuǎn)換成矩陣。1.3.1 直接輸入法創(chuàng)建矩陣在進(jìn)行矩陣操作時(shí),直接輸入法主要用來創(chuàng)建比較簡單的矩陣。創(chuàng)建方法是將矩陣名稱和它所要包含的元素以等號(hào)連接起來,等號(hào)左邊為要?jiǎng)?chuàng)建的矩陣名稱,等號(hào)右邊為矩陣所要包含的元素。矩陣的元素一般情況下需要用大括號(hào)“”括起來。1.3.1 直接輸入法創(chuàng)建矩陣1.創(chuàng)建標(biāo)量1.3.1 直接輸入法創(chuàng)建矩陣2.創(chuàng)建多元素的數(shù)值型矩陣當(dāng)創(chuàng)建的數(shù)值型矩陣只包含一個(gè)元素時(shí),創(chuàng)建方法就是上述標(biāo)

3、量的創(chuàng)建方法。當(dāng)矩陣包含多個(gè)元素時(shí),要用大括號(hào)“”把等號(hào)右邊的元素括起來,并用逗號(hào)“,”來分隔矩陣的行。1.3.2 利用函數(shù)創(chuàng)建矩陣1.BLOCK函數(shù)此函數(shù)的功能是根據(jù)給定的矩陣(須是方陣)來產(chǎn)生一個(gè)對(duì)角塊矩陣。格式:BLOCK(matrix1,matrix2,Matrix15)1.3.2 利用函數(shù)創(chuàng)建矩陣2. I函數(shù)此函數(shù)的功能是產(chǎn)生一個(gè)單位陣,即對(duì)角線上的元素為1,其余元素都為0。格式:I(dimension):”dimension”為具體數(shù)字,表示方陣的階數(shù)。1.3.2 利用函數(shù)創(chuàng)建矩陣3. J函數(shù)此函數(shù)的功能是根據(jù)給定的行數(shù)和列數(shù)重復(fù)產(chǎn)生矩陣中的某一元素。格式:J(nrow,ncol,

4、value)這里nrow為創(chuàng)建后矩陣的行數(shù),ncol為創(chuàng)建后矩陣的列數(shù),value為需要產(chǎn)生重復(fù)的元素。如果沒有指定ncol的值,系統(tǒng)默認(rèn)值為ncol=nrow,即取矩陣的列數(shù)等于其行數(shù)。如果沒有指定value的值,系統(tǒng)默認(rèn)此值為1。1.3.2 利用函數(shù)創(chuàng)建矩陣3. J函數(shù)1.3.2 利用函數(shù)創(chuàng)建矩陣4. DO函數(shù)此函數(shù)功能是根據(jù)指定的下界值、上界值以及增量來產(chǎn)生一個(gè)行向量。格式:DO(start,stop,increment)Start為下界值,stop為上界值,increment為增量。1.4 矩陣的運(yùn)算IML中的運(yùn)算符前綴運(yùn)算符前綴運(yùn)算符之指位于操作數(shù)前面的運(yùn)算符,包括“+”、“-”等。

5、例如“-A”中的負(fù)號(hào)就稱為前綴運(yùn)算符,代表對(duì)矩陣A中所有的元素取負(fù)。中間運(yùn)算符中間運(yùn)算符是指位于操作數(shù)之前的運(yùn)算符,包括“+、-、*、*、#、#、=”等。例如“A+B”中間的加號(hào),表示矩陣A中的元素加上矩陣B中對(duì)應(yīng)的元素。后綴運(yùn)算符后綴運(yùn)算符是指位于操作數(shù)后面的運(yùn)算符。例如“A”中的“”表示對(duì)矩陣A求轉(zhuǎn)置。1.4 矩陣的運(yùn)算2. IML中的矩陣運(yùn)算1.4 矩陣的運(yùn)算矩陣運(yùn)算實(shí)例1.5 矩陣下標(biāo)的使用在IML中,下標(biāo)的運(yùn)用在矩陣的運(yùn)算中占有非常重要的地位,它的使用更能體現(xiàn)IML語言的靈活與便捷。下標(biāo)在使用時(shí)需要置于中括號(hào)“ ”之中。格式:operandrow,column;operand為矩陣名

6、字,也可以是一個(gè)表達(dá)式。row為行下標(biāo),一般為數(shù)字或表達(dá)式,用以選擇矩陣的行。column為列下標(biāo),為數(shù)字或表達(dá)式,用以選擇矩陣的列。1.5 矩陣下標(biāo)的使用1. 選定矩陣的單個(gè)元素使用行、列下標(biāo)定位例如:A=4 5,6 7,8 9;B=A2,1;B表示取A第二行第一列的元素。只使用一個(gè)下標(biāo)定位例如:A=4 5,6 7,8 9;B=A5;B表示從左到右逐行數(shù),取矩陣A中的第五個(gè)(即第3行第1列)元素。1.5 矩陣下標(biāo)的使用2.選定矩陣的整行元素在選定已知矩陣的某一整行元素時(shí),只指定格式中行數(shù)的值,而不指定列數(shù)的值,表示選擇指定行中的所有元素。例如:A=4 5,6 7,8 9;B=A2, ;這里B

7、表示取矩陣A第二行所有的元素組成的矩陣。3.選定矩陣的整列元素在選定已知矩陣的某一整列元素時(shí),只指定列值,而不指定行值。例如: A=4 5,6 7,8 9;B=A ,2;這里B表示去矩陣A第二列所有元素組成的矩陣。1.5 矩陣下標(biāo)的使用4.選定矩陣的子矩陣選定矩陣的子矩陣是指運(yùn)用下標(biāo)的功能從已知的矩陣中選擇以部分元素,使這些元素重新組成一個(gè)矩陣。1.5 矩陣下標(biāo)的使用5.改變矩陣的內(nèi)容可以運(yùn)用下標(biāo)來修改已知矩陣中的單個(gè)元素、整行、整列元素或子矩陣。這里被改矩陣的表達(dá)式放在等號(hào)的左邊,中括號(hào)中用下標(biāo)指定需要修改元素的位置,修改的目標(biāo)數(shù)值或子矩陣放在等號(hào)的右邊。1.5 矩陣下標(biāo)的使用5.改變矩陣的

8、內(nèi)容矩陣下標(biāo)還可以用來進(jìn)行矩陣的計(jì)算,這時(shí)“row”與“column”被指定為運(yùn)算符。常見的矩陣下標(biāo)運(yùn)算符有8種。1.5 矩陣下標(biāo)的使用2 IML程序設(shè)計(jì)語言IML具有特定的程序設(shè)計(jì)環(huán)境,包含許多其他SAS模塊所不具有特點(diǎn)。在IML環(huán)境下,可以通過特定語句來控制整個(gè)程序的執(zhí)行。IF-THEN/ELSE語句模塊的定義與實(shí)施DOEND語句跳轉(zhuǎn)(JUMPING)語句停止語句IF-THEN/ELSE語句一般格式IF 表達(dá)式 THEN 語句1;ELSE 語句2;首先用IF引出一個(gè)表達(dá)式,然后對(duì)它的內(nèi)容進(jìn)行檢測,加入檢測結(jié)果為真,就執(zhí)行THEN后的語句1;加入檢測的結(jié)果為假,則執(zhí)行ELSE后的語句2。在I

9、F-THEN/ELSE語句中,可以使用嵌套的形式來進(jìn)行多次假設(shè)。模塊的定義與實(shí)施在IML中,模塊(Modules)是一個(gè)新的名詞,主要用于:在一個(gè)完成的程序中,創(chuàng)建一組語句,使之作為一個(gè)單位,方便其他語句的調(diào)用。更確切的說,就是在IML中產(chǎn)生一個(gè)子程序或函數(shù)。在IML中,創(chuàng)建一個(gè)單獨(dú)的編程環(huán)境,即產(chǎn)生一個(gè)模塊。在這個(gè)模塊中定義變量,使這些變量的功能只限于這個(gè)模塊中。模塊的定義與實(shí)施模塊也被稱為函數(shù)或子程序,它以START語句開始,以FINISH語句結(jié)束。當(dāng)模塊里只有一個(gè)參數(shù)時(shí),就被稱為函數(shù)(不同于IML自身函數(shù),模塊中的函數(shù)為自定義函數(shù)),可以像IML自身的函數(shù)一樣被調(diào)用;當(dāng)模塊里的參數(shù)超過一

10、個(gè)時(shí),就被稱為子程序。在IML中,當(dāng)調(diào)用一個(gè)函數(shù)時(shí),直接指定這個(gè)函數(shù)的名字即可;當(dāng)調(diào)用子程序時(shí),就必須通過CALL語句或RUN語句才能實(shí)現(xiàn)。模塊的定義與實(shí)施DPS簡介DPS簡介DPS是目前國內(nèi)唯一一款可在功能上替代國外大型統(tǒng)計(jì)軟件(如SAS、SPSS)、價(jià)格上適合于國內(nèi)用戶的具自主知識(shí)產(chǎn)權(quán)、技術(shù)上達(dá)到國際先進(jìn)水平的國產(chǎn)多功能統(tǒng)計(jì)分析軟件。 完善的統(tǒng)計(jì)分析功能涵蓋了所有統(tǒng)計(jì)分析內(nèi)容,是目前國內(nèi)統(tǒng)計(jì)分析功能最全軟件包。DPS的一般線性模型(GLM)可以處理各種類型試驗(yàn)設(shè)計(jì)方差分析,特別是一些用SPSS菜單操作解決不了、用SAS編程很難折騰的多因素裂區(qū)混雜設(shè)計(jì)、格子設(shè)計(jì)等方差分析問題,用DPS菜單操作可輕松搞

溫馨提示

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

評(píng)論

0/150

提交評(píng)論