1. 程式人生 > >sas簡單描述統計分析和散點圖

sas簡單描述統計分析和散點圖

簡單描述統計分析

一、 means過程
(一)例題和語句分析
例題1:某車間有30個人分成4組,求車間工人平均每小時製作的配件個數
這裡寫圖片描述

data data3_1;
input no w n;       /*按自由格式輸入變數no、w和n*/
cards;
01 10 35
02 6 32
03 8 29
04 6 26
;
run;
proc means data= data3_1 n mean;/*注意proc語句n與input語句n不同,proc語句的n表示未丟失的觀測個數,這裡有4個,
input語句的 n表示工人每小時製作配件的個數*/
var n;/*指定分析變數n*/ weight w; /*注意:必須設定變數w為均值的權數,否則算出的結果也不對*/
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

結果是
這裡寫圖片描述

在統計量預設(即不指定輸出哪一個或哪幾個統計量)時,即上面沒有N(觀測數)和mean(均值),系統預設輸出N、MEAN、STD DEV、MIN、MAX 5個統計量
結果是
這裡寫圖片描述
如果這道題缺少指定哪一個變數是要分析的變數的均值的權數weight,如果權數就是觀測數,結果就不會出錯,否則就會出錯。刪掉weight w;結果是30.5,正確結果是31
這裡寫圖片描述


這裡寫圖片描述
不指定分析變數的話,系統會把除了權數的變數輸出來,指定分析的變數的話,系統就只對指定的變數求它的統計量,使用者可以在proc means data上指定要輸出的統計量。
這裡寫圖片描述

例題2:分地區、性別對收入情況進行簡單的描述性統計分析
這裡寫圖片描述
籍貫n表示湖南,h表示河南;年齡中1代表小於35歲,2代表大於35歲
分類需要class語句

data data3_2; 
input hometown $ age income@@; 
/*使用高階控制符@@,使input語句一次讀取多條觀測*/
cards; 
n 1 30081 n 2 25442 h 1 18036 h 1 42084 n 2 14075
n 2 20036 n 2 18584 n 1 30036 n 1 27085 h 1 35058 h 1 32152 h 2 35687 n 1 35698 n 1 25478 h 2 36547 h 2 54123 n 2 45698 n 1 62135 n 1 65874 h 1 25698 ; run; proc means data=data3_2 maxdec=1; /*呼叫means過程,設定輸出的數值型結果含1位小數*/ class age hometown; /*指定分類變數為age和hometown*/ var income; /*設定分析變數為income*/ output out=stats mean=incmean; /*output語句產生新的sas資料集stats中,定義統計量mean輸出名稱為incmean,注意一定要為輸出的統計量定義名稱,否則出錯*/ run; proc print data=stats; title '不同地區收入情況調查'; /*定義此輸出過程的標題*/ run;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

以下介紹means過程的兩個部分
1、proc means data=資料集 後的<選項列表>
maxdec=數字—指定數值型變數的小數部分的位數,預設時系統保留兩位
alpha=數字—設定計算置信空間的置信水平a,a值在0~1之間
2、means過程一般使用的語句
var語句—規定進入描述性統計分析的變數,並定義他們的輸出次序
class語句—分組計算觀測的統計量
weight語句—設定統計量的權數
二、 univariate過程(單變數)
(一) means過程與univariate過程的差異
means允許有class語句,univariate沒有
univariate不僅包含means的一些功能,還可以生成統計圖,可以繪製莖葉圖、盒型圖和計算各種百分位值
(二) 例題和語句分析

Proc univariate data=chap1.data3_2 plot;  /*呼叫univariate過程,並指定輸出圖形,plot要求生成一個莖葉圖、一個盒型圖和一個正態概率圖*/
Class hometown;                    /*定義分類變數為hometown*/
Var income;                        /*定義分析變數為income*/
Run;

  
  • 1
  • 2
  • 3
  • 4
  • 5

三、 散點圖
繪製散點圖有兩個過程,分別是plot過程(低解析度)和gplot過程(高解析度)

Proc plot data=chap1.data3_6 vpct=50 hpct=70;
/*呼叫plot過程繪製散點圖,圖形在垂直方向佔一頁的50%,水平方向佔一頁的70%*/
Plot weight*height='*'/haxis=140 to 180 by 10
                      Href=150 160 170
                      Vaxis=30 to 70 by 10
                     Vref=50
                     ;
/*橫座標haxis從140到180每隔10取一個值,水平Vref參照線是50,
縱座標 Vaxis從30到70每隔10取一個值,設定垂直Href參照線是150 160 170,*/
Run;

  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

這裡寫圖片描述

haxis定義橫軸相等間隔的刻度標記值,Vaxis定義縱軸相等間隔的刻度標記值
Vref是定義橫軸參照線,Href是定義縱軸參照線
Plot語句的使用格式
Proc plot data=資料集

簡單描述統計分析