วิธีใช้คำสั่ง do while ใน sas
คุณสามารถใช้คำสั่ง DO WHILE ใน SAS เพื่อ วน ซ้ำซ้ำแล้วซ้ำอีก ในขณะที่ เงื่อนไขยังคงเป็นจริง
ตัวอย่างต่อไปนี้แสดงสองวิธีที่แตกต่างกันในการใช้คำสั่งนี้ในทางปฏิบัติ
ตัวอย่างที่ 1: คำสั่ง DO WHILE ใน SAS
โค้ดต่อไปนี้แสดงวิธีใช้คำสั่ง DO WHILE ใน SAS เพื่อสร้างชุดข้อมูลที่ประกอบด้วยตัวแปรสองตัวที่เรียกว่า var1 และ var2 ที่ยังคงสร้างค่าใหม่ต่อไป แม้ว่า ค่าของ var1 จะน้อยกว่า 100:
/*create dataset using DO WHILE statement*/
data my_data;
var1 = 1;
var2 = 1;
dowhile (var1<100);
var1 = var1 + var2;
var2 = var1 * var2;
var1 + 1;
output ;
end ;
run ;
/*view dataset*/
proc print data =my_data;
คำสั่ง DO WHILE ยังคงสร้างค่าใหม่สำหรับ var1 และ var2 แม้ว่า ค่าของ var1 จะน้อยกว่า 100 ก็ตาม
เมื่อค่าของ var1 เกิน 100 คำสั่ง DO WHILE จะหยุดทำงานและค่าใหม่จะหยุดถูกเพิ่มลงในชุดข้อมูล
ตัวอย่างที่ 2: คำสั่ง DO WHILE พร้อมคำสั่ง TO ใน SAS
โค้ดต่อไปนี้แสดงวิธีใช้คำสั่ง DO WHILE กับคำสั่ง TO ใน SAS เพื่อสร้างชุดข้อมูลที่ประกอบด้วยตัวแปรสองตัวที่เรียกว่า var1 และ var2 ที่ยังคงสร้างค่าใหม่ต่อไป แม้ว่า ค่าของ var1 จะน้อยกว่า 10:
/*create dataset using DO WHILE statement with TO statement*/
data my_data;
var1 = 0;
do var2 = 1 to 5 while (var1 < 10);
var1 = var2**3;
output ;
end ;
run ;
/*view dataset*/
proc print data =my_data;
คำสั่ง TO สั่งให้ SAS พยายามสร้างค่าสำหรับ var2 ตั้งแต่ 1 ถึง 5 แต่ เมื่อ ค่าของ var1 น้อยกว่า 10 เท่านั้น
เมื่อค่าของ var1 เกิน 10 คำสั่ง DO WHILE จะหยุดลงและค่าใหม่จะหยุดถูกเพิ่มลงในชุดข้อมูล
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:
วิธีใช้ IF-THEN-DO ใน SAS
วิธีใช้ IF-THEN-ELSE ใน SAS
วิธีลบรายการที่ซ้ำกันใน SAS