วิธีใช้ฟังก์ชัน substr ใน sas (พร้อมตัวอย่าง)


คุณสามารถใช้ฟังก์ชัน SUBSTR ใน SAS เพื่อแยกส่วนของสตริงได้

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

SUBSTR(แหล่งที่มา, ตำแหน่ง, N)

ทอง:

  • ที่มา : ช่องทางการวิเคราะห์
  • Position : ตำแหน่งเริ่มต้นในการอ่าน
  • N : จำนวนตัวอักษรที่จะอ่าน

ต่อไปนี้เป็นสี่วิธีทั่วไปในการใช้คุณลักษณะนี้:

วิธีที่ 1: แยกอักขระ N ตัวแรกจากสตริง

 data new_data;
    set original_data;
    first_four = substr (string_variable, 1 , 4 );
run ;

วิธีที่ 2: แยกอักขระในช่วงตำแหน่งเฉพาะจากสตริง

 data new_data;
    set original_data;
    two_through_five = substr (string_variable, 2 , 4 );
run ;

วิธีที่ 3: แยกอักขระ N ตัวสุดท้ายออกจากสตริง

 data new_data;
    set original_data;
    last_three = substr (string_variable, length (string_variable)- 2 , 3 );
run ;

วิธีที่ 4: สร้างตัวแปรใหม่หากมีอักขระอยู่ในสายอักขระ

 data new_data;
    set original_data;
    if substr (string_variable, 1 , 4 ) = ' some_string ' then new_var = ' Yes ';
    else new_var = ' No ';
run ;

ตัวอย่างต่อไปนี้แสดงวิธีใช้แต่ละวิธีกับชุดข้อมูลต่อไปนี้ใน SAS:

 /*create dataset*/
data original_data;
    input team $1-10;
    datalines ;
Warriors
Wizards
Rockets
Celtics
Thunder
;
run ;

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

ตัวอย่างที่ 1: แยกอักขระ N ตัวแรกออกจากสตริง

รหัสต่อไปนี้แสดงวิธีการแยกอักขระ 4 ตัวแรกจากตัวแปร ทีม :

 /*create new dataset*/
data new_data;
    set original_data;
    first_four = substr (team, 1 , 4 );
run ;

/*view new dataset*/
proc print data = new_data;

โปรดทราบว่าตัวแปร first_four มีอักขระสี่ตัวแรกของตัวแปร ทีม

ตัวอย่างที่ 2: แยกอักขระในช่วงตำแหน่งเฉพาะจากสตริง

รหัสต่อไปนี้แสดงวิธีการแยกอักขระจากตำแหน่งที่ 2 ถึง 5 ของตัวแปร ทีม :

 /*create new dataset*/
data new_data;
    set original_data;
    two_through_five = substr (team, 2 , 4 );
run ;

/*view new dataset*/
proc print data = new_data;

ตัวอย่างที่ 3: แยกอักขระ N ตัวสุดท้ายออกจากสตริง

รหัสต่อไปนี้แสดงวิธีการแยกอักขระ 3 ตัวสุดท้ายจากตัวแปร ทีม :

 /*create new dataset*/
data new_data;
    set original_data;
    last_three = substr (team , length (team) -2,3 );
run ;

/*view new dataset*/
proc print data = new_data; 

ตัวอย่างที่ 4: สร้างตัวแปรใหม่หากมีอักขระอยู่ในสตริง

รหัสต่อไปนี้แสดงวิธีการสร้างตัวแปรใหม่ที่เรียกว่า W_Team ซึ่งประเมินเป็น ” ใช่ ” หากอักขระตัวแรกของชื่อทีมคือ “W” หรือ ” no ” หากอักขระตัวแรกไม่ใช่ “W”

 /*create new dataset*/
data new_data;
    set original_data;
    if substr (team, 1 , 1 ) = ' W ' then W_Team = ' Yes ';
else W_Team = ' No ';
run ;

/*view new dataset*/
proc print data = new_data; 

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

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

วิธีทำให้ข้อมูลเป็นมาตรฐานใน SAS
วิธีแทนที่อักขระในสตริงใน SAS
วิธีแทนที่ค่าที่หายไปด้วยศูนย์ใน SAS
วิธีลบรายการที่ซ้ำกันใน SAS

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

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