summary過程主要用來對數值變數計算單個變數的基本統計量,使用語句與means過程類似。預設時summary過程不列印輸出計算結果。必須指定print選項才能輸出計算結果。
語法格式: proc summary 選統計關鍵;
var 變數名1變數名2>...;
by 變數名1變數名2>...;
class 變數名1變數名2>...;
freq變數;
weight變數
id 變數名1變數名2>...;
output
1)選:常用選項如下:
data=:指定分析的資料集
maxdec=:輸出小數點位數
missimg:要求遺漏資料最為class變數的下乙個分組變數
print:指定列印輸出到輸出視窗
nway:不對class變數中的統計量計算輸出
2)統計關鍵:常用統計關鍵量如下:
n:有效觀察值個數
****s:遺漏資料個數
mean:均值
std:標準差
min:最小值
max:最大值
range:極差
sum:觀測值總和
var:樣本方差s2
uss:總平方和
css:總離差平方和
stderr:均值的標準誤
cv:變異係數s/mean
t:t檢驗h0:均值=0 prt–t檢驗顯著性
例子:data students;
input group age height weight *** $;
cards;
2 35 162 42 f
1 31 173 43 m
2 42 156 56 f
1 53 152 39 f
1 42 173 63 m
1 28 165 55 f
2 33 157 66 f
2 17 162 46 f
1 16 173 45 m
1 25 180 66 m
;run;
/*使用sort過程首先對資料集排序*/
proc sort data = students;
by group;
/*呼叫summary過程*/
proc summary data = students mean std n max min range stderr cv;/*指定統計關鍵量*/
var age height weight;/*指定分析變數*/
class ***;/*指定分類變數產生三類 空、f和m */
by group;/*指定分組變數 費為兩類1和2,一共為6類 即 1-na、2-na、1-f、1-m、2-f、2-m分類*/
output out = stu_analy;
proc print data=stu_analy;
run;
結果如下圖:
SAS中的if過濾語句
在sas中,if語句和where語句都有過濾作用,請看如下兩端 其效果是相同的 data a set sashelp.class if eq 男 run data a set sashelp.class where eq 男 run if 過濾語句的基本語法為 if 條件 其完整形式應該是 if 條...
SAS中關於PDV的總結
什麼是pdv 個人認為可以把pdv想象成一排用於存放變數值的盒子。每個盒子代表乙個變數。提交乙個data步後,sas會對這個data步進行編譯,然後執行。首先,pdv是在data步的編譯階段生成的。編譯會進行語法檢查並建立一排整齊擺放的 盒子 然後,在data步的執行階段,根據不同語句對pdv中變數...
SAS中的排序語句proc sort
常用寫法 適用情況 每日一問 proc sort data database out newdatabase nodupkey by all run 如果可以覆蓋原資料集,可以直接省略out步 nodupkey需要和後面的by語句一起使用,並且給by後面的變數排序後,僅根據by變數剔重 如果原資料集...