วิธีใช้ if-then-do ใน sas (พร้อมตัวอย่าง)


คุณสามารถใช้คำสั่ง IF-THEN-DO ใน SAS เพื่อ ดำเนินการ บล็อกคำสั่งได้ หาก เงื่อนไขเป็นจริง

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

 if var1 = " value " then do ;
    new_var2 = 10;
    new_var3 = 5;
end ;

หมายเหตุ : คำสั่ง IF-THEN จะใช้เมื่อคุณต้องการดำเนินการคำสั่ง เดียว คำสั่ง IF-THEN-DO จะใช้เมื่อคุณต้องการดำเนินการหลายคำสั่ง

ตัวอย่างต่อไปนี้แสดงวิธีการใช้คำสั่ง IF-THEN-DO ในทางปฏิบัติ

ตัวอย่าง: IF-THEN-DO ใน SAS

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

 /*create dataset*/
data original_data;
    input store $sales;
    datalines ;
At 14
At 19
At 22
At 20
At 16
At 26
B40
B43
B29
B 30
B35
B 33
;
run ;

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

เราสามารถใช้คำสั่ง IF-THEN-DO ต่อไปนี้เพื่อสร้างตัวแปรใหม่สองตัวที่รับค่าบางอย่างหากร้านค้าเท่ากับ “A” ในชุดข้อมูลดั้งเดิม:

 /*create new dataset*/
data new_data;
set original_data;
if store = " A " then do ;
    region=" East ";
    country=" Canada ";
end ;
run ;

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

คำสั่ง IF-THEN-DO ใน SAS

โค้ดชิ้นนี้ทำงานอย่างไร:

หากร้านค้าเท่ากับ “A” แสดงว่าตัวแปรใหม่ที่เรียกว่า ภูมิภาค จะถูกสร้างขึ้นด้วยค่า “ตะวันออก” และ ตัวแปรใหม่ที่เรียกว่า ประเทศ จะถูกสร้างขึ้นด้วยค่า “แคนาดา”

โปรดทราบว่าเรายังสามารถใช้คำสั่ง IF-THEN-DO หลายคำสั่งได้:

 /*create new dataset*/
data new_data;
set original_data;

if store = " A " then do ;
    region=" East ";
    country=" Canada ";
end ;

    if store = " B " then do ;
    region=" West ";
    country=" USA ";
    end ; 
run ;

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

โค้ดชิ้นนี้ทำงานอย่างไร:

  • หากร้านค้าเท่ากับ “A” แสดงว่าตัวแปรใหม่ที่เรียกว่า ภูมิภาค จะถูกสร้างขึ้นด้วยค่า “ตะวันออก” และตัวแปรใหม่ที่เรียกว่า ประเทศ จะถูกสร้างขึ้นด้วยค่า “แคนาดา”
  • หากร้านค้าเท่ากับ “B” ค่า ภูมิภาค จะเป็น “ตะวันตก” และค่า ประเทศ คือ “สหรัฐอเมริกา”

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

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

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

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

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