วิธีใช้ตรรกะ if and ใน sas


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อใช้ตรรกะ IF AND ใน SAS:

 data new_data;
    set my_data;
    if team="Cavs" and points>20 then cavs_and_20 = 1;
    else cavs_and_20 = 0;
run ;

ตัวอย่างนี้สร้างชุดข้อมูลใหม่ด้วยคอลัมน์ชื่อ cavs_and_20 ซึ่งรับค่าต่อไปนี้:

  • 1 หากค่าในคอลัมน์ ทีม เท่ากับ “Cavs” และหากค่าในคอลัมน์ คะแนน มากกว่า 20
  • 0 หากไม่ตรงตามเงื่อนไขทั้งสอง

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

ตัวอย่าง: วิธีใช้ตรรกะ IF AND ใน SAS

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

 /*create dataset*/
data my_data;
    input team $points;
    datalines ;
Cavs 12
Cavs 24
Warriors 15
Cavs 26
Warriors 14
Celtics 36
Celtics 19
;
run ;

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

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

  • 1 หากค่าในคอลัมน์ ทีม เท่ากับ “Cavs” และหากค่าในคอลัมน์ คะแนน มากกว่า 20
  • 0 หากไม่ตรงตามเงื่อนไขทั้งสอง

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อทำสิ่งนี้:

 /*create new dataset*/
data new_data;
    set my_data;
    if team="Cavs" and points>20 then cavs_and_20 = 1;
    else cavs_and_20 = 0;
run ;

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

คอลัมน์ใหม่ชื่อ cavs_and_20 ใช้ตรรกะ IF AND เพื่อกำหนดว่าแต่ละแถวในชุดข้อมูลควรมีค่าเป็น 0 หรือ 1

เราจะเห็นว่ามีสองบรรทัดที่ชื่อทีมคือ Cavs และค่าแต้มมากกว่า 20

สองแถวนี้ถูกกำหนดให้เป็นค่า 1 ในคอลัมน์ cavs_and_20 ใหม่

ไม่มีแถวอื่นที่ตรงกับทั้งสองเงื่อนไข ดังนั้นแถวอื่นๆ ทั้งหมดจะได้รับค่า 0 ในคอลัมน์ cavs_and_20

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

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

วิธีเปลี่ยนชื่อตัวแปรใน SAS
วิธีสร้างตัวแปรใหม่ใน SAS
วิธีแทนที่อักขระในสตริงใน SAS

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

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