วิธีดำเนินการแปลงบันทึกใน sas

การทดสอบทางสถิติจำนวนมากถือว่าค่าของตัวแปรเฉพาะมี การแจกแจงตามปกติ

อย่างไรก็ตามค่าต่างๆ มักจะไม่ กระจายตามปกติ วิธีหนึ่งในการแก้ปัญหานี้คือการแปลงตัวแปรโดยจดบันทึกของแต่ละค่า

เมื่อทำการแปลงนี้ โดยทั่วไปแล้วตัวแปรจะเข้าใกล้การแจกแจงแบบปกติ

ตัวอย่างต่อไปนี้แสดงวิธีดำเนินการแปลงบันทึกในตัวแปรใน SAS

ตัวอย่าง: การแปลงบันทึกใน SAS

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

 /*create dataset*/
data my_data;
    input x;
    datalines ;
1
1
1
2
2
2
2
2
2
3
3
3
6
7
8
;
run ;

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

เราสามารถใช้ PROC UNIVARIATE เพื่อทำการทดสอบความเป็นปกติของตัวแปร x เพื่อตรวจสอบว่าตัวแปรนั้นมีการกระจายแบบปกติหรือไม่ และยังสร้างฮิสโตแกรมเพื่อแสดงภาพการแจกแจงของค่าอีกด้วย:

 /*create histogram and perform normality tests*/
proc univariate data =my_data normal ; 
histogram x;
run ; 

ในตารางสุดท้ายที่ชื่อ Normality Tests เราจะเห็นว่า ค่า p ของการทดสอบ Shapiro-Wilk น้อยกว่า 0.05 ซึ่งเป็นหลักฐานที่ชัดเจนว่าตัวแปร x ไม่ได้กระจายตามปกติ

ฮิสโตแกรมยังแสดงให้เห็นว่าการกระจายของค่าดูเหมือนจะไม่กระจายตามปกติ:

เราสามารถลอง แปลงบันทึก บนชุดข้อมูลดั้งเดิมเพื่อดูว่าเราสามารถสร้างชุดข้อมูลที่กระจายแบบปกติกว่านี้ได้หรือไม่

เราสามารถใช้โค้ดต่อไปนี้เพื่อสร้างชุดข้อมูลใหม่ใน SAS โดยที่เรานำบันทึกของค่า x ดั้งเดิมแต่ละค่า:

 /*use log transformation to create new dataset*/
data log_data;
    set my_data;
    x = log (x);
run ;

/*view log transformed data*/
proc print data =log_data; 

จากนั้นเราสามารถใช้ PROC UNIVARIATE อีกครั้งเพื่อทำการทดสอบภาวะปกติกับตัวแปรที่ถูกแปลงและสร้างฮิสโตแกรมด้วย:

 /*create histogram and perform normality tests*/
proc univariate data =log_data normal ; 
histogram x;
run ; 

ในตารางสุดท้ายที่ชื่อว่า Normality Tests เราจะเห็นว่า ค่า p สำหรับการทดสอบ Shapiro-Wilk มีค่ามากกว่า 0.05

ฮิสโตแกรมยังแสดงให้เห็นว่าการกระจายของค่าเป็นปกติมากกว่าก่อนการเปลี่ยนแปลงเล็กน้อย:

จากผลลัพธ์ของการทดสอบชาปิโร-วิลค์และฮิสโตแกรมที่นำเสนอข้างต้น เราจะสรุปได้ว่าการแปลงลอการิทึมสร้างตัวแปรกระจายแบบปกติมากกว่าตัวแปรดั้งเดิมมาก

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

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:

วิธีระบุค่าผิดปกติใน SAS
วิธีคำนวณระยะปรุงอาหารใน SAS
วิธีสร้างฮิสโตแกรมใน SAS

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

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