Sas: วิธีเปลี่ยนความยาวของตัวแปรอักขระ
วิธีที่ง่ายที่สุดในการเปลี่ยนความยาวของตัวแปรอักขระใน SAS คือการใช้คำสั่ง ALTER TABLE และ MODIFY ใน PROC SQL
เมื่อต้องการทำเช่นนี้ คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้:
proc sql ;
alter table my_data
modify team char( 4 );
quit ;
ตัวอย่างนี้เปลี่ยนความยาวของตัวแปรอักขระที่เรียกว่า team ในชุดข้อมูลที่เรียกว่า my_data ให้มีความยาว 4
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: เปลี่ยนความยาวตัวแปรอักขระใน SAS
สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน SAS ที่มีข้อมูลเกี่ยวกับทีมบาสเก็ตบอลต่างๆ:
/*create dataset*/
data my_data;
input team $points;
datalines ;
Cavs 12
Cavs 24
Heat 15
Cavs 26
Heat 14
Mavs 36
Mavs 19
Nets 20
Nets 31
;
run ;
/*view dataset*/
proc print data =my_data;

เราสามารถใช้ PROC CONTENTS เพื่อแสดงความยาวของตัวแปรแต่ละตัวในชุดข้อมูล:
/*view length of each variable in dataset*/
proc contents data =my_data;
ตารางสุดท้ายของผลลัพธ์จะแสดงความยาวของตัวแปรแต่ละตัว:

จากตารางนี้เราจะเห็น:
- ตัวแปร จุด เป็นตัวแปรตัวเลขที่มีความยาว 8
- ตัวแปร ทีม คือตัวแปรอักขระที่มีความยาว 8
สมมติว่าเราต้องการเปลี่ยนตัวแปร ทีม ให้มีความยาว 4
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อทำสิ่งนี้:
/*change length of team variable to 4*/
proc sql ;
alter table my_data
modify team char( 4 );
quit ;
เราสามารถนำไปใช้งานได้โดยใช้ PROC CONTENTS อีกครั้งเพื่อแสดงความยาวของตัวแปรแต่ละตัวในชุดข้อมูล:
/*view updated length of each variable in dataset*/
proc contents data =my_data;
ตารางสุดท้ายของผลลัพธ์จะแสดงความยาวของตัวแปรแต่ละตัว:

เราจะเห็นได้ว่าตัวแปร ทีม ตอนนี้มีความยาว 4
ควรสังเกตว่าไม่มีค่าใดในคอลัมน์ ทีม ที่ถูกตัดทอนเนื่องจากชื่อทีมที่ยาวที่สุดมีความยาว 4
อย่างไรก็ตาม หากคุณเปลี่ยนความยาวของตัวแปร ทีม เป็น 3 อักขระตัวสุดท้ายของชื่อทีมบางชื่อก็จะถูกตัดทอน
เมื่อใช้วิธีการนี้ จะไม่มีข้อความเตือนปรากฏขึ้นในกรณีที่มีการตัดทอน ดังนั้นให้แน่ใจว่าคุณทราบความยาวสูงสุดของสตริงในคอลัมน์อักขระของคุณก่อนที่จะใช้วิธีนี้
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:
วิธีแยกตัวเลขจากสตริงใน SAS
วิธีใช้ฟังก์ชัน SUBSTR ใน SAS
วิธีลบอักขระพิเศษออกจากสตริงใน SAS