วิธีใช้ฟังก์ชัน coalesce ใน sas (พร้อมตัวอย่าง)
คุณสามารถใช้ฟังก์ชัน COALESCE ใน SAS เพื่อส่งคืนค่าแรกที่ไม่หายไปในแต่ละแถวในชุดข้อมูล
ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ
ตัวอย่าง: วิธีใช้ COALESCE ใน SAS
สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน SAS ที่มีค่าที่ขาดหายไป:
/*create dataset*/
data original_data;
input team $points rebounds assists;
datalines ;
Warriors 25 8 7
Wizards. 12 6
Rockets. . 5
Celtics 24. 5
Thunder. 14 5
Spurs 33 19 .
Nets. . .
Mavericks. 8 10
Kings. . 9
Pelicans. 23 6
;
run ;
/*view dataset*/
proc print data = original_data;
เราสามารถใช้ฟังก์ชัน COALESCE เพื่อสร้างคอลัมน์ใหม่ที่ส่งคืนค่าแรกที่ไม่หายไปในแต่ละแถวระหว่างคอลัมน์จุด รีบาวด์ และช่วยเหลือ:
/*create new dataset*/
data new_data;
set original_data;
first_non_missing = coalesce (points, rebounds, assists);
run ;
/*view new dataset*/
proc print data =new_data;
นี่คือวิธีการเลือกค่าของคอลัมน์ first_non_missing :
- แถวแรก: ค่าแรกที่ไม่ขาดหายไประหว่างคะแนน รีบาวด์ และแอสซิสต์คือ 25
- แถวที่สอง: ค่าแรกที่ไม่ขาดหายไประหว่างคะแนน รีบาวด์ และแอสซิสต์คือ 12
- แถวที่สาม: ค่าแรกที่ไม่ขาดหายไประหว่างคะแนน รีบาวด์ และแอสซิสต์คือ 5
และอื่นๆ
หมายเหตุ #1 : หากค่าทั้งหมดหายไป (เช่นในบรรทัดที่ 7) ฟังก์ชัน COALESCE จะส่งกลับค่าที่หายไป
หมายเหตุ #2 : ฟังก์ชัน COALESCE ใช้งานได้กับตัวแปรตัวเลขเท่านั้น หากคุณต้องการส่งคืนค่าแรกที่ไม่หายไปในรายการตัวแปรอักขระ ให้ใช้ฟังก์ชัน COALESCEC
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:
วิธีทำให้ข้อมูลเป็นมาตรฐานใน SAS
วิธีแทนที่อักขระในสตริงใน SAS
วิธีแทนที่ค่าที่หายไปด้วยศูนย์ใน SAS
วิธีลบรายการที่ซ้ำกันใน SAS