วิธีเปลี่ยนชื่อตัวแปรใน sas (พร้อมตัวอย่าง)


คุณสามารถใช้ฟังก์ชัน เปลี่ยนชื่อ เพื่อเปลี่ยนชื่อตัวแปรตั้งแต่หนึ่งตัวขึ้นไปในชุดข้อมูล SAS

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

 data new_data;
    set original_data ( rename =(old_name=new_name));
run ;

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

 /*create dataset*/
data original_data;
    input xyz;
    datalines ;
1 4 76
2 3 49
2 3 85
4 5 88
2 2 90
;
run ;

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

ตัวอย่างที่ 1: เปลี่ยนชื่อตัวแปร

รหัสต่อไปนี้แสดงวิธีการเปลี่ยนชื่อเฉพาะตัวแปร x ในชุดข้อมูล:

 /*rename one variable*/
data new_data;
set original_data ( rename =(x=new_x));
run ;

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

โปรดทราบว่า x ถูกเปลี่ยนชื่อ เป็น new_x แต่ชื่อตัวแปรอื่นๆ ทั้งหมดยังคงเหมือนเดิม

ตัวอย่างที่ 2: เปลี่ยนชื่อตัวแปรหลายตัว

รหัสต่อไปนี้แสดงวิธีการเปลี่ยนชื่อตัวแปร x และ y ในชุดข้อมูล

โปรดทราบว่าคุณไม่จำเป็นต้องใส่ลูกน้ำระหว่างชื่อตัวแปรใหม่

 /*rename multiple variables*/
data new_data;
    set original_data ( rename =(x=new_x y=new_y));
run ;

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

ตัวอย่างที่ 3: เพิ่มคำนำหน้าให้กับตัวแปรทั้งหมด

รหัสต่อไปนี้แสดงวิธีการเพิ่มคำนำหน้า _NEW ให้กับตัวแปรทั้งหมดในชุดข้อมูล:

 /*define prefix to append to each variable*/
proc sql noprint ;
   select cats(name, '=', '_NEW', name)
          into :list
          separated by ' '
          from dictionary.columns
          where libname = 'WORK' and memname = 'ORIGINAL_DATA';
quit ;

/*add prefix to each variable in dataset*/
proc datasets library = work;
   modify original_data;
   rename &list;
quit ;

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

ตัวอย่างที่ 4: เพิ่มส่วนต่อท้ายให้กับตัวแปรทั้งหมด

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

 /*define suffix to append to each variable*/
proc sql noprint ;
   select cats(name, '=', name, '_NEW')
          into :list
          separated by ' '
          from dictionary.columns
          where libname = 'WORK' and memname = 'ORIGINAL_DATA';
quit ;

/*add suffix to each variable in dataset*/
proc datasets library = work;
   modify original_data;
   rename &list;
quit ;

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

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

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

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

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

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