SAS - พล็อตกระจาย

scatterplot คือกราฟประเภทหนึ่งที่ใช้ค่าจากสองตัวแปรที่ลงจุดในระนาบคาร์ทีเซียน โดยปกติจะใช้เพื่อหาความสัมพันธ์ระหว่างสองตัวแปร ใน SAS เราใช้PROC SGSCATTER เพื่อสร้าง scatterplots

โปรดทราบว่าเราสร้างชุดข้อมูลชื่อ CARS1 ในตัวอย่างแรกและใช้ชุดข้อมูลเดียวกันสำหรับชุดข้อมูลที่ตามมาทั้งหมด ชุดข้อมูลนี้ยังคงอยู่ในไลบรารีงานจนกว่าจะสิ้นสุดเซสชัน SAS

ไวยากรณ์

ไวยากรณ์พื้นฐานในการสร้าง scatter-plot ใน SAS คือ -

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

ต่อไปนี้เป็นคำอธิบายของพารามิเตอร์ที่ใช้ -

  • DATASET คือชื่อของชุดข้อมูล

  • VARIABLE คือตัวแปรที่ใช้จากชุดข้อมูล

Scatterplot อย่างง่าย

ใน scatterplot อย่างง่ายเราเลือกตัวแปรสองตัวจากชุดข้อมูลและจัดกลุ่มตามตัวแปรที่สาม เรายังสามารถติดป้ายกำกับข้อมูล ผลลัพธ์แสดงให้เห็นว่าตัวแปรทั้งสองกระจัดกระจายอย่างไรในไฟล์Cartesian plane.

ตัวอย่าง

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;

เมื่อเรารันโค้ดด้านบนเราจะได้ผลลัพธ์ดังต่อไปนี้ -

Scatterplot พร้อมการทำนาย

เราสามารถใช้พารามิเตอร์การประมาณเพื่อทำนายความแข็งแรงของความสัมพันธ์ระหว่างกันโดยการวาดวงรีรอบ ๆ ค่า เราใช้ตัวเลือกเพิ่มเติมในขั้นตอนเพื่อวาดวงรีดังที่แสดงด้านล่าง

ตัวอย่าง

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;

เมื่อเรารันโค้ดด้านบนเราจะได้ผลลัพธ์ดังต่อไปนี้ -

กระจายเมทริกซ์

นอกจากนี้เรายังสามารถมี scatterplot ที่เกี่ยวข้องกับตัวแปรมากกว่าสองตัวแปรโดยการจัดกลุ่มให้เป็นคู่ ในตัวอย่างด้านล่างเราพิจารณาตัวแปรสามตัวและวาดเมทริกซ์พล็อตกระจาย เราได้เมทริกซ์ผลลัพธ์ 3 คู่

ตัวอย่าง

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

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

เมื่อเรารันโค้ดด้านบนเราจะได้ผลลัพธ์ดังต่อไปนี้ -