วิธีใช้ฟังก์ชัน anydigit ใน sas


คุณสามารถใช้ฟังก์ชัน ANYDIGIT ใน SAS เพื่อส่งคืนตำแหน่งของหลักแรกในสตริงที่กำหนด

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

ANYDIGIT(นิพจน์, [เริ่ม])

ทอง:

  • expression : สตริงที่จะค้นหา
  • start (ไม่บังคับ) : ตำแหน่งเริ่มต้นที่จะค้นหา

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

ตัวอย่าง: การใช้ฟังก์ชัน ANYDIGIT ใน SAS

สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน SAS ซึ่งมีข้อมูลเกี่ยวกับพนักงานต่างๆ ของบริษัท:

 /*create dataset*/
data my_data;
    input employeeID $sales;
    datalines ;
54AAF 23
0009A 38
BC18B 40
09:30 12
04429 65
B1300 90
B1700 75
RRHHJ 35
0Y009 40
C6500 23
;
run ;

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

เราสามารถใช้ฟังก์ชัน ANYDIGIT เพื่อค้นหาตำแหน่งของหลักแรกในคอลัมน์ EmployeeID :

 /*create new dataset*/
data new_data;
    set my_data;
    firstDigit = anydigit (employeeID);
run ;

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

คอลัมน์ใหม่ที่เรียกว่า firstDigit จะแสดงตำแหน่งของตัวเลขตัวแรกในคอลัมน์ EmployeeID

ตัวอย่างเช่น:

  • หลักแรกของ 54AAF อยู่ในตำแหน่ง 1
  • ตัวเลขตัวแรกของ 0009A อยู่ในตำแหน่ง 1
  • หลักแรกของ BC18B อยู่ในตำแหน่ง 3

และอื่นๆ

หากไม่มีตัวเลขสำหรับ ID พนักงานที่กำหนด ระบบจะส่งคืนค่า 0

นอกจากนี้เรายังสามารถใช้อาร์กิวเมนต์ เริ่มต้น ในฟังก์ชัน ANYDIGIT เพื่อระบุตำแหน่งเริ่มต้นที่จะค้นหา

ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อค้นหาตำแหน่งของหลักแรกในคอลัมน์ EmployeeID โดยเริ่มจากตำแหน่งที่ 3 :

 /*create new dataset*/
data new_data;
    set my_data;
    firstDigit = anydigit (employeeID, 3 );
run ;

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

โปรดทราบว่าค่า EmployeeID ที่มีเฉพาะตัวอักษรในสองตำแหน่งแรกจะได้รับค่า 0 ในคอลัมน์ firstDigit เนื่องจากตอนนี้การค้นหาหลักเริ่มต้นที่ตำแหน่ง 3

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

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

วิธีลบอักขระพิเศษออกจากสตริงใน SAS
วิธีแทนที่อักขระในสตริงใน SAS
วิธีแปลงตัวแปรอักขระเป็นตัวเลขใน SAS

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

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