SAS - 散點圖



散點圖是一種圖表,它使用笛卡爾平面中繪製的兩個變數的值。它通常用於找出兩個變數之間的關係。在 SAS 中,我們使用PROC SGSCATTER來建立散點圖。

請注意,我們在第一個示例中建立名為 CARS1 的資料集,並在所有後續資料集中使用相同的資料集。此資料集在 SAS 會話結束之前一直保留在工作庫中。

語法

在 SAS 中建立散點圖的基本語法如下:

PROC sgscatter  DATA = DATASET;
   PLOT VARIABLE_1 * VARIABLE_2
   / datalabel = VARIABLE group = VARIABLE;
RUN;

以下是使用的引數說明:

  • 資料集是資料集的名稱。

  • 變數是從資料集中使用的變數。

簡單的散點圖

在簡單的散點圖中,我們從資料集中選擇兩個變數,並根據第三個變數對它們進行分組。我們也可以標記資料。結果顯示了這兩個變數在笛卡爾平面中的散佈情況。

示例

PROC SQL;
create table CARS1 as
SELECT make, model, type, invoice, horsepower, length, weight
FROM 
SASHELP.CARS
WHERE make in ('Audi','BMW')
;
RUN;

TITLE 'Scatterplot - Two Variables';
PROC sgscatter  DATA = CARS1;
   PLOT horsepower*Invoice 
   / datalabel = make group = type grid;
   title 'Horsepower vs. Invoice for car makers by types';
RUN; 

當我們執行以上程式碼時,我們將得到以下輸出:

sactter_plot1

帶有預測的散點圖

我們可以使用估計引數來預測相關性的強度,方法是在值周圍繪製一個橢圓。我們使用過程中附加的選項來繪製如下所示的橢圓。

示例

proc sgscatter data = cars1; 
compare y = Invoice  x = (horsepower length)  
         / group = type  ellipse =(alpha = 0.05 type = predicted); 
title
'Average Invoice vs. horsepower for cars by length'; 
title2
'-- with 95% prediction ellipse --'
; 
format
Invoice dollar6.0;
run;

當我們執行以上程式碼時,我們將得到以下輸出:

sactter_plot_eliipse

散點矩陣

我們也可以透過將多個變數分組為對來獲得包含多個變數的散點圖。在下面的示例中,我們考慮三個變數並繪製散點矩陣。我們得到 3 對結果矩陣。

示例

PROC sgscatter  DATA = CARS1;
   matrix horsepower invoice length
   / group = type;

   title 'Horsepower vs. Invoice vs. Length for car makers by types';
RUN; 

當我們執行以上程式碼時,我們將得到以下輸出:

sactter_plot_matrix
廣告