วิธีแยกตัวเลขจากสตริงใน sas


วิธีที่ง่ายที่สุดในการแยกตัวเลขออกจากสตริงใน SAS คือการใช้ฟังก์ชัน COMPRESS พร้อมด้วยตัวแก้ไข “A”

ฟังก์ชันนี้ใช้ไวยากรณ์พื้นฐานต่อไปนี้:

 data new_data;
    set original_data;
    numbers_only = compress(some_string, '', ' A ');
run ;

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: แยกตัวเลขออกจากสตริงใน SAS

สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน SAS ที่แสดงชื่อหลักสูตรต่างๆ ของมหาวิทยาลัย:

 /*create dataset*/
data original_data;
    input course $12.;
    datalines ;
Stats101
Economics203
Business201
Botany411
Calculus101
English201
Chemistry402
Physics102
;
run ;

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

เราสามารถใช้โค้ดต่อไปนี้เพื่อแยกเฉพาะตัวเลขจากชื่อหลักสูตรแต่ละหลักสูตร:

 /*extract numbers from course column*/
data new_data;
    set original_data;
    course_number_only = compress (course, '', ' A ');
run ;

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

โปรดทราบว่าคอลัมน์ใหม่ที่เรียกว่า course_number_only มีเพียงตัวเลขจากสตริงในคอลัมน์ หลักสูตร เท่านั้น

หากคุณต้องการแยกเฉพาะอักขระจากแต่ละสตริง คุณสามารถใช้ฟังก์ชัน COMPRESS พร้อมด้วยตัวแก้ไข ‘d’ ได้:

 /*extract characters from course column*/
data new_data;
    set original_data;
    course_characters_only = compress (course, '', ' d ');
run ;

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

โปรดทราบว่าคอลัมน์ใหม่ที่เรียกว่า course_Characters_only มีเพียงตัวเลขจากสตริงในคอลัมน์ หลักสูตร เท่านั้น

หมายเหตุ : คุณสามารถดูรายการตัวแก้ไขทั้งหมดสำหรับฟังก์ชัน COMPRESS ได้ที่ หน้าเอกสารประกอบของ SAS

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

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

วิธีทำให้ข้อมูลเป็นมาตรฐานใน SAS
วิธีระบุค่าผิดปกติใน SAS
วิธีสร้างตารางความถี่ใน SAS

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

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