วิธีใช้ครั้งแรก ในที่สุด. ตัวแปรใน sas


คุณสามารถใช้ FIRST และ สุดท้าย ใน SAS เพื่อระบุงานแรกและการสังเกตล่าสุดโดยกลุ่มในชุดข้อมูล SAS

สรุปการทำงานของแต่ละฟังก์ชันมีดังนี้:

  • FIRST.variable_name กำหนดค่า 1 ให้กับการสังเกต ครั้งแรก ในกลุ่ม และค่า 0 ให้กับการสังเกตอื่นๆ ทั้งหมดในกลุ่ม
  • LAST.variable_name กำหนดค่า 1 ให้กับการสังเกต ครั้งสุดท้าย ในกลุ่ม และค่า 0 ให้กับการสังเกตอื่นๆ ทั้งหมดในกลุ่ม

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

 /*create dataset*/
data my_data;
    input team $pointsrebounds;
    datalines ;
Mavs 29 10
Mavs 13 6
Mavs 22 5
Mavs 20 9
Spurs 13 9
Spurs 15 10
Spurs 33 8
Spurs 27 11
Rockets 25 8
Rockets 14 4
Rockets 16 7
Rockets 12 4
;
run ;

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

ตัวอย่างที่ 1: วิธีใช้ FIRST ในเอสเอเอส

เราสามารถใช้ FIRST ต่อไปนี้ ทำงานใน SAS เพื่อกำหนดค่า 1 ให้กับการสังเกตครั้งแรกสำหรับแต่ละทีมในชุดข้อมูล:

 /*sort dataset by team*/
proc sort data =my_data;
    by team;
run ;

/*create new dataset that labels first row for each team*/
datafirst_team ;
    set my_data;
    by team;
    first_team=first.team;
run ;

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

โปรดทราบว่าคอลัมน์ first_team จะตั้งค่าการสังเกตครั้งแรกของแต่ละทีมเป็น 1 ค่าอื่น ๆ ทั้งหมดถูกกำหนดให้เป็นค่า 0 .

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

 /*sort dataset by team*/
proc sort data =my_data;
    by team;
run ;

/*create new dataset only contains first row for each team*/
data first_team;
    set my_data;
    by team;
    if first.team;
run ;

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

โปรดทราบว่าชุดข้อมูลมีเพียงการสังเกตครั้งแรกจากแต่ละทีม

ตัวอย่างที่ 2: วิธีใช้ LAST ในเอสเอเอส

เราสามารถใช้ LAST ต่อไปนี้ ทำงานใน SAS เพื่อกำหนดค่า 1 ให้กับการสังเกตครั้งแรกสำหรับแต่ละทีมในชุดข้อมูล:

 /*sort dataset by team*/
proc sort data =my_data;
    by team;
run ;

/*create new dataset that labels last row for each team*/
data last_team;
    set my_data;
    by team;
    last_team=last.team;
run ;

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

โปรดทราบว่าคอลัมน์ Last_team จะตั้งค่าการสังเกตครั้งสุดท้ายของแต่ละทีมเป็น 1 ค่าอื่น ๆ ทั้งหมดถูกกำหนดให้เป็นค่า 0 .

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

 /*sort dataset by team*/
proc sort data =my_data;
    by team;
run ;

/*create new dataset only contains last row for each team*/
data last_team;
    set my_data;
    by team;
    if last.team;
run ;

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

โปรดทราบว่าชุดข้อมูลจะมีเฉพาะการสังเกตล่าสุดจากแต่ละทีม

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

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

วิธีเรียงลำดับตัวแปรใหม่ใน SAS
วิธีติดป้ายกำกับตัวแปรใน SAS
วิธีเปลี่ยนชื่อตัวแปรใน SAS

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

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