http://blog.csdn.net/chenyi8888/article/category/908775
分類(lèi): 數(shù)據(jù)分析與挖掘 2012-08-15 18:33 227人閱讀 評(píng)論(0) 收藏 舉報(bào)最近在做SAS轉(zhuǎn)換代碼,之前學(xué)過(guò),但時(shí)間長(zhǎng)了有所忘記,為了以后方便查找,所以再次進(jìn)行復(fù)習(xí)的時(shí)候,對(duì)SAS學(xué)習(xí)進(jìn)行了簡(jiǎn)單的記載。
SAS常用語(yǔ)法結(jié)構(gòu) SAS的變量的基本類(lèi)型 第一:數(shù)值型 第二:字符型 變量名后必須使用$說(shuō)明符 其他數(shù)據(jù)類(lèi)型中,日期、時(shí)間等變量存為數(shù)值型,可以使任意的整數(shù),定點(diǎn)實(shí)數(shù)、浮點(diǎn)實(shí)數(shù)等,一般使用8個(gè)字節(jié)。字符變量默認(rèn)的長(zhǎng)度為8個(gè)字符,當(dāng)然也可以通過(guò)length語(yǔ)句指定其長(zhǎng)度。Length 字符型變量名 $ 長(zhǎng)度
對(duì)數(shù)據(jù)處理兩大步驟:數(shù)據(jù)步和過(guò)程步 數(shù)據(jù)步 以data語(yǔ)句開(kāi)始,以run語(yǔ)句結(jié)束;過(guò)程步以proc開(kāi)始,以run語(yǔ)句結(jié)束。
libname 庫(kù)標(biāo)記 '文件夾位置' 選項(xiàng); 假設(shè)C盤(pán)目錄下,有一個(gè)文件夾"user",該文件夾下有一個(gè)sas數(shù)據(jù)集為aa。 數(shù)據(jù)庫(kù)分兩個(gè)永久庫(kù)和臨時(shí)庫(kù):臨時(shí)庫(kù)就只有一個(gè):名為WORK,永久庫(kù)有多個(gè)。 每個(gè)數(shù)據(jù)集都有一個(gè)兩級(jí)名,第一級(jí)為庫(kù)標(biāo)記,第二級(jí)是數(shù)據(jù)集名
INFILE 用于從外部文件讀入數(shù)據(jù),必須出現(xiàn)在INPUT語(yǔ)句之前,主要功能如下:
INPUT語(yǔ)句,用于向系統(tǒng)表明如何讀入每一條記錄,主要功能: 格式:
SAS程序塊 格式:
SAS各種常用隨機(jī)函數(shù)
分支語(yǔ)句 if 條件 then 語(yǔ)句; if 條件 then do 語(yǔ)句1;....語(yǔ)句n; end; if 條件 then 語(yǔ)句; else 語(yǔ)句; 多分支結(jié)構(gòu): select(選擇表達(dá)式); when(值列表) 語(yǔ)句; when(值列表) 語(yǔ)句; ..... otherwise 語(yǔ)句; end; 或 select; when(條件) 語(yǔ)句; when(條件) 語(yǔ)句; ..... otherwise 語(yǔ)句; end;
SAS過(guò)程步常用命令 title 指定標(biāo)題 var 指定分析變量 class 指定分類(lèi)變量 model 指定模型形式 means 產(chǎn)生簡(jiǎn)單統(tǒng)計(jì)量 plot 繪制散點(diǎn)圖 print 列出數(shù)據(jù)集內(nèi)容 sort 按變量值進(jìn)行排序 by 指定變量分組 output 指定輸出結(jié)果存放的數(shù)據(jù)集 Freq 指定一個(gè)重復(fù)變量 where 選擇數(shù)據(jù)集的子集 label 臨時(shí)標(biāo)簽
我們這里給出了RETAIN語(yǔ)句幾種常用的使用格式: l Retain; l Retain T1 T2 T3; l Retain T1 T2 T3 100; l Retain T1 T2 T3 (100 ); l Retain T1 T2 T3 (100 99 98 ); 第一種使用格式表示用INPUT語(yǔ)句或賦值語(yǔ)句創(chuàng)建的所有變量從DATA步的這次執(zhí)行到下一次重復(fù)時(shí)被保留。第二種使用格式規(guī)定了變量名字,變量列表或數(shù)組名,它們的值是用戶(hù)想保留的。第三種使用格式表示一個(gè)變量列表T1、T2、T3接受同一個(gè)初始值100。第四種使用格式是將初始值100用小括號(hào)括起來(lái),SAS系統(tǒng)將分配括號(hào)中的這個(gè)值給變量列表中的第一個(gè)變量,即T1=100,其它T2和T3為缺失值。第五種使用格式給出了初始值列表,將依此分配初始值列表中的值給變量列表中各個(gè)變量,即T1=100,T2=99,T3=98。 IN=選項(xiàng) 格式:SAS-data-set(IN=variable) 一個(gè)臨時(shí)的數(shù)字類(lèi)型的變量,其值為0或1 IN選項(xiàng),當(dāng)讀入多個(gè)SAS數(shù)據(jù)集時(shí),用IN選項(xiàng)可以確定本觀測(cè)數(shù)據(jù)來(lái)自那個(gè)數(shù)據(jù)集。 variable=0表示觀測(cè)不是來(lái)自本數(shù)據(jù)集 variable=1表示觀測(cè)是來(lái)自本數(shù)據(jù)集
SAS聚類(lèi)分析 if語(yǔ)句 for語(yǔ)句
do until (循環(huán)條件表達(dá)式);
set語(yǔ)句 表示從那個(gè)數(shù)據(jù)集里讀入數(shù)據(jù) 刪除/增加變量或觀測(cè)值 data Car;
數(shù)據(jù)拆分 data SASUSER.Car_low SASUSER.Car_high; 數(shù)據(jù)合并有兩種:縱向和橫向
proc print;run; 數(shù)據(jù)清洗
proc rank 其實(shí)最主要的是掌握那幾個(gè)選項(xiàng),該proc 的整體語(yǔ)法結(jié)構(gòu)如下: 這是一個(gè)整體的語(yǔ)法結(jié)構(gòu),舉例,比如說(shuō)我要對(duì)sashelp中的height排名次: 例子: proc rank descending out=oE11; var compsit; ranks rankcompsit; proc sort; by rankcompist; proc print data=oE11; run;
均值 均值統(tǒng)計(jì)里有兩個(gè)概念:截尾均值和縮尾均值
級(jí)差 四分位差
方差 用全體數(shù)據(jù)進(jìn)行計(jì)算的,因此它反映了所有數(shù)據(jù)相對(duì)于數(shù)據(jù)中心發(fā)散的平均程度。方差的算術(shù)平方根就是標(biāo)準(zhǔn)差。 x=var(89,90,78,98,87,76,69,90,92,88); y=std(89,90,78,98,87,76,69,90,92,88); put '方差=' x '標(biāo)準(zhǔn)差=' y; run;
標(biāo)準(zhǔn)誤差 標(biāo)準(zhǔn)誤差不是觀測(cè)值的實(shí)際誤差,也不是誤差范圍,它只是對(duì)一組觀測(cè)數(shù)據(jù)可靠性的估計(jì)。標(biāo)準(zhǔn)誤差越小,則觀測(cè)到可靠性大,反之則不大可靠。多數(shù)應(yīng)用都用標(biāo)準(zhǔn)誤差來(lái)評(píng)價(jià)數(shù)據(jù)的測(cè)量精度。 data; x=stderr(89,90,78,98,87,76,69,90,92,88); put '標(biāo)準(zhǔn)誤差=' x; run;
變異系數(shù) 變異系數(shù)是衡量相對(duì)離散程度的一個(gè)重要指標(biāo)。具體是指一組數(shù)據(jù)的標(biāo)準(zhǔn)差與其相應(yīng)的均值之比,變異系數(shù)越小,說(shuō)明數(shù)據(jù)的離散程度越小。 舉例說(shuō)明,身高和體重差異如何進(jìn)行對(duì)比?直接采用標(biāo)準(zhǔn)差是無(wú)法進(jìn)行對(duì)比的,因?yàn)闃?biāo)準(zhǔn)差是帶有單位的,身高的單位是厘米,體重的單位是千克,不同的單位的統(tǒng)計(jì)量對(duì)比起來(lái)是沒(méi)有任何意義的。為此,采用變異系數(shù)來(lái)消除量綱即計(jì)量單位的影響,進(jìn)行對(duì)比。
data; height=cv(157,170,161,184,184,168,166,158,174,166,173,189,188,163,161,189,183,186,188,155); weight=cv(61,71,74,59,71,55,73,66,50,57,48,68,73,52,60,56,53,67,73,64); put '身高的變異系數(shù)=' height '體重的變異系數(shù)=' weight; if height>weight then put '身高比體重的差異大'; else if height<weight then put '身高比體重的差異小'; else put '身高比體重的差異相當(dāng)'; run;
分布形狀 在對(duì)數(shù)據(jù)進(jìn)行概括性的分析時(shí),考察集中趨勢(shì)和離散程度是兩個(gè)重要方面,但并非僅此而已。就像對(duì)一個(gè)人進(jìn)行評(píng)價(jià)一樣,不僅要考察人的高矮情況,也考考察胖瘦情況,更要看看一個(gè)人是否站有站相,坐有坐相。對(duì)于數(shù)據(jù)的分布狀況,也要進(jìn)行概括性的分析,才能掌握數(shù)據(jù)的全貌。 數(shù)據(jù)分布的測(cè)度主要考察數(shù)據(jù)分布的偏斜程度、扁平程度,以及數(shù)據(jù)分布是否對(duì)稱(chēng),其指標(biāo)主要有偏度和峰度兩類(lèi)。
偏度 是對(duì)數(shù)據(jù)分布對(duì)稱(chēng)性的測(cè)度。通常采用三階中心矩的計(jì)算方法,其主要考察離差三次方之和與標(biāo)準(zhǔn)差的三次方的比例。 如果數(shù)據(jù)是對(duì)稱(chēng)的,則偏度等于0;如果偏度明顯不等于0,則表明數(shù)據(jù)分布是非對(duì)稱(chēng)的,具體地說(shuō),偏度大于0時(shí),均值右邊的數(shù)據(jù)更為分散,表明數(shù)據(jù)右偏;偏度小于0時(shí),均值左邊的數(shù)據(jù)更為分散,表明數(shù)據(jù)左偏。 data;
峰度 用來(lái)反映數(shù)據(jù)分布曲線頂端陡峭或偏平程度的指標(biāo)。這里所說(shuō)的陡峭或偏平是針對(duì)標(biāo)準(zhǔn)正態(tài)分布而言的。 data;
sas利用FREQ、MEANS、UNIVARIATE過(guò)程進(jìn)行描述統(tǒng)計(jì)分析。 proc freq <選項(xiàng)>; by 變量/變量列表; exact 統(tǒng)計(jì)選項(xiàng)</計(jì)算選項(xiàng)>; |
|
來(lái)自: Becky_Spencer > 《SAS》