วิธีการคำนวณค่าเฉลี่ยเคลื่อนที่ใน sas


ในทางสถิติ ค่าเฉลี่ยเคลื่อนที่ แสดงถึงค่าเฉลี่ยของค่า n ก่อนหน้าในชุดข้อมูล

วิธีที่ง่ายที่สุดในการคำนวณค่าเฉลี่ยเคลื่อนที่ใน SAS คือการใช้คำสั่ง proc expand

ตัวอย่างต่อไปนี้แสดงวิธีใช้คำสั่งนี้ในทางปฏิบัติ

ตัวอย่าง: คำนวณค่าเฉลี่ยเคลื่อนที่ใน SAS

สมมติว่าเราสร้างชุดข้อมูลต่อไปนี้ใน SAS:

 /*create dataset*/
data original_data;
    input time values;
    datalines ;
1 7
2 12
3 14
4 12
5 16
6 18
7 11
8 10
9 14
10 17
;
run ;

/*view dataset*/
proc print data = original_data;

ตอนนี้ สมมติว่าเราต้องการคำนวณค่าเฉลี่ยเคลื่อนที่ 3 ช่วงสำหรับคอลัมน์ ค่า

เราสามารถใช้ proc ขยาย เพื่อทำสิ่งนี้:

 /*calculate 3-period moving average for values*/
proc expand data =original_data out =out_data method=none;
    idtime ;
    convert values = values_ma3 / transout = (movave 3 );
run ;

/*view results*/
proc print data =out_data; 

คอลัมน์ใหม่ที่เรียกว่า my3_values แสดงค่าเฉลี่ยเคลื่อนที่ 3 ช่วงสำหรับคอลัมน์ ค่า

ตัวอย่างเช่น ค่าที่สามของคอลัมน์ Values_my3 แสดงถึงค่าเฉลี่ยของ 3 ช่วงก่อนหน้า:

  • ค่าเฉลี่ยเคลื่อนที่ = (7+12+14) / 3 = 11.0000

ค่าที่สี่ของคอลัมน์ Values_ma3 ยังแสดงถึงค่าเฉลี่ยของ 3 ช่วงก่อนหน้าด้วย:

  • ค่าเฉลี่ยเคลื่อนที่ = (12+14+12) / 3 = 12.6667

และอื่นๆ

หากต้องการคำนวณค่าเฉลี่ยเคลื่อนที่สำหรับระยะเวลาต่างๆ เพียงเปลี่ยนค่าหลังจาก ย้าย โค้ดแล้ว

ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อคำนวณค่าเฉลี่ยเคลื่อนที่ 4 ช่วงสำหรับคอลัมน์ ค่า :

 /*calculate 4-period moving average for values*/
proc expand data =original_data out =out_data method=none;
    idtime ;
    convert values = values_ma4 / transout = (movave 4 );
run ;

/*view results*/
proc print data =out_data; 

คอลัมน์ใหม่ที่เรียกว่า Values_my4 จะแสดงค่าเฉลี่ยเคลื่อนที่ 4 ช่วงสำหรับคอลัมน์ ค่า

แหล่งข้อมูลเพิ่มเติม

บทความต่อไปนี้อธิบายวิธีดำเนินงานทั่วไปอื่นๆ ใน SAS:

วิธีระบุค่าผิดปกติใน SAS
วิธีการคำนวณเปอร์เซ็นไทล์ใน SAS
วิธีการคำนวณค่าเฉลี่ย ค่ามัธยฐาน และโหมดใน SAS

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *