
SAS編程PROC步_描述性統(tǒng)計量分析_數(shù)據(jù)分析師
描述性統(tǒng)計指標(biāo)的計算可以用四個不同的過程來實(shí)現(xiàn),它們分別是means過程、summary過程、univariate過程以及tabulate過程。它們在功能范圍和具體的操作方法上存在一定的差別,下面我們大概了解一下它們的異同點(diǎn)。
相同點(diǎn):他們均可計算出均數(shù)、標(biāo)準(zhǔn)差、方差、標(biāo)準(zhǔn)誤、總和、加權(quán)值的總和、最大值、最小值、全距、校正的和未校正的離差平方和、變異系數(shù)、樣本分布位置的t檢驗(yàn)統(tǒng)計量、遺漏數(shù)據(jù)和有效數(shù)據(jù)個數(shù)等,均可應(yīng)用by語句將樣本分割為若干個更小的樣本,以便分別進(jìn)行分析。
不同點(diǎn):
(1)means過程、summary過程、univariate過程可以計算樣本的偏度(skewness)和峰度(kurtosis),而tabulate過程不計算這些統(tǒng)計量;
(2)univariate過程可以計算出樣本的眾數(shù)(mode),其它三個過程不計算眾數(shù);
(3)summary過程執(zhí)行后不會自動給出分析的結(jié)果,須引用output語句和print過程來顯示分析結(jié)果,而其它三個過程則會自動顯示分析的結(jié)果;
(4)univariate過程具有統(tǒng)計制圖的功能,其它三個過程則沒有;
(5)tabulate過程不產(chǎn)生輸出資料文件(存儲各種輸出數(shù)據(jù)的文件),其它三個均產(chǎn)生輸出資料文件。
統(tǒng)計制圖的過程均可以實(shí)現(xiàn)對樣本分布特征的圖形表示,一般情況下可以使用的有chart過程、plot過程、gchart過程和gplot過程。大家有沒有發(fā)現(xiàn)前兩個和后兩個只有一個字母‘g’(代表graph)的差別,其實(shí)它們之間(只差一個字母g的過程之間)的統(tǒng)計描述功能是相同的,區(qū)別僅在于繪制出的圖形的復(fù)雜和美觀程度。
chart過程和plot過程繪制的圖形類似于我們用文本字符堆積起來的圖形,只能概括地反映出資料分布的大體形狀,實(shí)際上這兩個過程繪制的圖形并不能稱之為圖形,因?yàn)樗揪蜎]有涉及一般意義上圖形的任何一種元素(如顏色、分辨率等)。而gchart過程和gplot過程給出的是真正意義上的圖形,可以用很多的語句和選項(xiàng)來控制圖形的各方面的性質(zhì)和特征。
chart和gchart與plot和gplot的區(qū)別則體現(xiàn)在不同的作圖功能,前兩個過程可以繪制出的圖形主要有條形圖(包括橫條和豎條)、圓圖、環(huán)形圖和星形圖等,后兩個過程通常用一個記錄中的兩個變量值表示點(diǎn)的坐標(biāo)來繪制圖形,如散點(diǎn)圖和線圖等。
描述性統(tǒng)計過程的一般格式
1. means過程的一般格式
proc means 選項(xiàng)列表; |
by 變量名稱(分組變量); |
class 變量名稱(分組變量); |
freq變量名稱(數(shù)值變量,用以表示相應(yīng)記錄出現(xiàn)的頻數(shù)) |
weight變量名稱(數(shù)值變量,用以表示相應(yīng)記錄的權(quán)重系數(shù)) |
var 變量名稱(待分析的數(shù)值變量); |
run; |
Proc means 語句后的選項(xiàng)主要用來指定所要計算的統(tǒng)計量,默認(rèn)情況下,Means過程會給出頻數(shù)、均數(shù)、標(biāo)準(zhǔn)差、最大值和最小值等,其余統(tǒng)計量的計算均需要在選項(xiàng)中指定。class語句所指定的分組變量用來進(jìn)行分組,而by語句所指定的分組變量是用來將數(shù)據(jù)分為若干個更小的樣本,以便SAS分別在各小樣本內(nèi)進(jìn)行各自獨(dú)立的處理。freq語句和weight語句分別引導(dǎo)代表記錄出現(xiàn)頻數(shù)和權(quán)重系數(shù)的數(shù)值變量。var語句引導(dǎo)所要進(jìn)行分析的所有變量的列表,SAS將對var語句所引導(dǎo)的所有變量分別進(jìn)行描述性統(tǒng)計分析。
2. summary過程的一般格式
proc summary 選項(xiàng)列表; |
by 變量名稱(分組變量); |
class 變量名稱(分組變量); |
freq變量名稱(數(shù)值變量,用以表示相應(yīng)記錄出現(xiàn)的頻數(shù)) |
weight變量名稱(數(shù)值變量,用以表示相應(yīng)記錄的權(quán)重系數(shù)) |
output <out=數(shù)據(jù)集名> <統(tǒng)計量關(guān)鍵字=自定義變量名> |
var 變量名稱(待分析的數(shù)值變量); |
run; |
summary過程的格式和means過程可以說是完全相同的,各條語句和選項(xiàng)的含義也是相同的,包括在means過程中未列出的output語句也可以應(yīng)用于means過程,只是此語句在summary過程應(yīng)用較多(這樣才能將分析結(jié)果顯示出來),所以才將其列入一般格式中。output語句用來對分析結(jié)果輸出為數(shù)據(jù)文件進(jìn)行控制,其后的選項(xiàng)可有可無,若無則SAS按照默認(rèn)方式進(jìn)行?!皁ut=數(shù)據(jù)集名”用來定義輸出數(shù)據(jù)文件的文件名稱,文件名的格式和數(shù)據(jù)步中數(shù)據(jù)文件名相同?!敖y(tǒng)計量關(guān)鍵字=自定義變量名”用來自定義輸出數(shù)據(jù)文件中各種統(tǒng)計量的變量名稱,前者是系統(tǒng)定義的(和proc語句后選項(xiàng)中的統(tǒng)計量關(guān)鍵字完全相同),必須正確無誤,后者可自行定義。默認(rèn)狀態(tài)下輸出統(tǒng)計量只有頻數(shù)、均數(shù)、標(biāo)準(zhǔn)差、最大值和最小值,在默認(rèn)狀態(tài)不能滿足需要時這一選項(xiàng)則是必需的。
3. univariate過程的一般格式
proc univariate 選項(xiàng)列表; |
by 變量名稱(分組變量); |
class 變量名稱(分組變量); |
freq變量名稱(數(shù)值變量,用以表示相應(yīng)記錄出現(xiàn)的頻數(shù)) |
weight變量名稱(數(shù)值變量,用以表示相應(yīng)記錄的權(quán)重系數(shù)) |
histogram 變量名稱/選項(xiàng)列表 |
output <out=數(shù)據(jù)集名> <統(tǒng)計量關(guān)鍵字=自定義變量名> pctlpts=<百分位數(shù)…> <指定需要的百分位數(shù)> pctlpre=<新變量名列> <指定所需百分位數(shù)對應(yīng)的輸出變量名> |
var 變量名稱(待分析的數(shù)值變量); |
run; |
univariate過程和以上兩個過程的格式非常相似,相同的語句和選項(xiàng)其含義也相同,所不同的是某些統(tǒng)計量只能在univariate過程中計算(如眾數(shù)),以及univariate過程中所具有的繪圖功能。histogram語句即用來指示SAS對其后所指定的變量繪制直方圖,其后的選項(xiàng)用來指示SAS添加不同類型的擬合圖形(如正態(tài)分布的分布密度曲線)。
4. tabulate過程的一般格式
proc tabulate 選項(xiàng)列表; |
by 變量名稱(分組變量); |
class 變量名稱(分組變量); |
freq變量名稱(數(shù)值變量,用以表示相應(yīng)記錄出現(xiàn)的頻數(shù)) |
weight變量名稱(數(shù)值變量,用以表示相應(yīng)記錄的權(quán)重系數(shù)) |
table <<頁變量表達(dá)式>,<行變量表達(dá)式>,<列變量表達(dá)式>></表格選項(xiàng)> |
var 變量名稱(待分析的數(shù)值變量,統(tǒng)計量列入相應(yīng)的表單元格); |
run; |
tabulate過程和上述幾個過程的格式也基本相似,相同的語句和選項(xiàng)也代表相同的含義。最大的不同也是tabulate過程中最為重要的是table語句,他用來定義表格的具體格式以及表格中所要包括的統(tǒng)計量。
5. gchart過程的一般格式
proc gchart 選項(xiàng)列表; |
||||||||||||||||||||
圖形關(guān)鍵詞變量名稱/選項(xiàng)列表 |
||||||||||||||||||||
run;
|
此過程格式簡單,復(fù)雜的地方在于圖形關(guān)鍵字(每個圖形關(guān)鍵字對應(yīng)一種圖形類型)所引導(dǎo)的語句,這里是控制圖形類型及圖形要素的地方,涉及到眾多的關(guān)鍵字和選項(xiàng)。gchart過程可以使用的圖形關(guān)鍵字及其所繪制的圖形類型見下表(表2.1)。
表2.1gchart過程可以使用的圖形關(guān)鍵字及其所繪制的圖形類型
圖形關(guān)鍵字后的變量名用以指定進(jìn)行圖形描述時的分組變量,可以是數(shù)值型的(此時以各組的組中值為分組的標(biāo)志),也可以是字符型的。其后的選項(xiàng)比較重要的有:(1)type=統(tǒng)計量關(guān)鍵字,表示以圖形對變量(sumvar所指定的變量)的哪一種統(tǒng)計量進(jìn)行描述,比如頻數(shù)(freq)、均數(shù)(mean)、總計(sum)、頻數(shù)百分比(pctn)等;(2)subgroup=變量名(分組變量),指定要進(jìn)行分組(各組段內(nèi)再分組)的變量;(3)sumvar=變量名(數(shù)值變量),指定要進(jìn)行統(tǒng)計計算的變量,也就是“type=統(tǒng)計量關(guān)鍵字”選項(xiàng)中統(tǒng)計量的計算所依據(jù)的變量。其它的選項(xiàng)較少用到或系統(tǒng)默認(rèn)值即可基本滿足要求,這里還是少羅嗦,以后用到再說。
6. gplot過程的一般格式
proc gplot 選項(xiàng)列表; |
bubble 散點(diǎn)圖表達(dá)式 |
bubble2 散點(diǎn)圖表達(dá)式 |
plot散點(diǎn)圖表達(dá)式 |
plot2散點(diǎn)圖表達(dá)式 |
run; |
從gplot過程的一般格式中我們就可看出,此過程只能繪制兩種類型的圖形,bubble語句指示SAS繪制泡狀散點(diǎn)圖,plot語句指示SAS繪制點(diǎn)狀散點(diǎn)圖。bubble2語句和plot2語句指示SAS在同一區(qū)域內(nèi)(bubble2和bubble在同一區(qū)域,plot2和plot在同一區(qū)域)繪制第二個圖形,兩者的橫坐標(biāo)相同(同一變量),縱坐標(biāo)分別位于左右兩側(cè)(可以是同一變量,也可以是兩個不同的變量)。
7. 散點(diǎn)圖表達(dá)式的一般形式為:
?。?)bubble和bubble2語句:縱坐標(biāo)變量名*橫坐標(biāo)變量名=泡尺寸變量名(變量值以泡的大小表示),三者均應(yīng)為數(shù)值變量;
?。?)plot和plot2語句:縱坐標(biāo)變量名*橫坐標(biāo)變量名<=n/分類變量名>,此處等號及其后的部分可以省略,此時SAS以默認(rèn)的散點(diǎn)類型繪制散點(diǎn)圖;若等號后為n(n為正整數(shù),是散點(diǎn)類型的編號),SAS則以指定的編號對應(yīng)的散點(diǎn)類型繪制散點(diǎn)圖;若等號后為分類變量名(可為字符型或數(shù)值型,為數(shù)值型時作為離散型變量處理,每一個值將被當(dāng)作一個類別),此變量的具體值(或與每個具體值對應(yīng)的圖形)將被作為散點(diǎn)用來繪制散點(diǎn)圖。
chart過程和plot過程的一般格式及各選項(xiàng)使用方法分別與gchart過程和gplot過程是基本相同的,不同之處僅在于后兩者中涉及到有關(guān)三維和圖形元素(顏色等)的語句和選項(xiàng)在前兩者中是無效的。例如vbar3d語句在chart過程中無效,bubble語句在plot過程中無效。其余的語句和選項(xiàng)使用方法完全相同,所以在掌握了gchart過程和gplot過程后,chart過程和plot過程你會不學(xué)自通。
描述性統(tǒng)計關(guān)鍵字及其含義
SAS中可計算的描述性統(tǒng)計量多達(dá)二十余種,大部分可在以上介紹的前四個過程中計算,個別統(tǒng)計量在某些過程中不能計算,大家需要注意,要不然系統(tǒng)顯示錯誤信息時還不知道是怎么回事。
我經(jīng)常遇到這種情況,系統(tǒng)提示錯誤(此類提示信息顯示在log窗口中)時總是摸不著頭腦,費(fèi)半天勁才能搞明白。沒辦法,摸著石頭過河嘛!不過這樣也并非一無是處,最起碼可以積累很多使用經(jīng)驗(yàn)。
下表(表2.2)列出SAS中可以計算的所有描述性統(tǒng)計量關(guān)鍵字及其含義,供大家使用時參考。
表2.2SAS中可以計算的描述性統(tǒng)計量關(guān)鍵字及其含義
關(guān)鍵字 |
所代表的含義 |
n |
有效數(shù)據(jù)記錄數(shù) |
nmiss |
缺失數(shù)據(jù)記錄數(shù) |
mean |
均數(shù) |
std |
標(biāo)準(zhǔn)差 |
stderr |
標(biāo)準(zhǔn)誤 |
var |
方差 |
median |
中位數(shù) |
mode |
眾數(shù) |
cv |
變異系數(shù) |
max |
最大值 |
min |
最小值 |
range |
全距 |
sum |
總計 |
sumwgt |
加權(quán)值總計 |
css |
校正的離均差平方和 |
uss |
未校正的離均差平方和 |
clm |
可信限(上下界值) |
lclm |
可信限下側(cè)界值 |
uclm |
可信限上側(cè)界值 |
skew(skewness) |
偏度 |
kurt(kurtosis) |
峰度 |
t |
分布位置假設(shè)檢驗(yàn)之t統(tǒng)計量 |
probt |
上述t統(tǒng)計量對應(yīng)的概率值 |
q1 |
第一四分位數(shù) |
q3 |
第三四分位數(shù) |
qrange |
四分位數(shù)間距 |
p1 |
第一百分位數(shù) |
p5 |
第五百分位數(shù) |
p10 |
第十百分位數(shù) |
p90 |
第九十百分位數(shù) |
p95 |
第九十五百分位數(shù) |
p99 |
第九十九百分位數(shù) |
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實(shí)戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機(jī)一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實(shí)戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗(yàn)與 t 檢驗(yàn):差異、適用場景與實(shí)踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計學(xué)領(lǐng)域,假設(shè)檢驗(yàn)是驗(yàn)證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實(shí)踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點(diǎn)數(shù)據(jù)的科學(xué)計數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點(diǎn)數(shù)據(jù)時的科學(xué)計數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運(yùn)營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗(yàn)證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實(shí)戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計” 與 “用戶體驗(yàn) ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實(shí)踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10