Sas: วิธีใช้ proc freq กับคำสั่ง where


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อใช้คำสั่ง WHERE ใน PROC FREQ ใน SAS:

 proc freq data =my_data;
    where var1 ='A';
    tables var2;
run ;

ไวยากรณ์เฉพาะนี้สร้างตารางความถี่สำหรับตัวแปรที่เรียกว่า var2 แต่สำหรับบรรทัดที่ var1 เท่ากับ “A” เท่านั้น

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

ตัวอย่าง: การใช้ Proc FREQ กับคำสั่ง WHERE ใน SAS

สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน SAS:

 /*create dataset*/
data my_data;
    input team $position $points;
    datalines ;
A Guard 22
A Guard 20
A Guard 30
A Forward 14
A Forward 11
B Guard 12
B Guard 22
B Forward 30
B Forward 9
B Forward 12
B Forward 25
;
run ;

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

เราสามารถใช้คำสั่ง PROC FREQ ต่อไปนี้กับคำสั่ง WHERE เพื่อคำนวณความถี่ของค่าในคอลัมน์ตำแหน่งสำหรับแถวที่ทีมเท่ากับ “A” เท่านั้น:

 /*calculate frequency of position where team is equal to 'A'*/
proc freq data =my_data;
    where team='A';
    position tables ;
run ; 

เอาต์พุตจะแสดงความถี่ของค่าตัวแปรตำแหน่งสำหรับแถวที่ทีมเท่ากับ ‘A’ เท่านั้น

ตัวอย่างเช่น เราเห็น:

  • ค่า “ส่งต่อ” ปรากฏ สองครั้ง สำหรับทีม A
  • ค่า “Guard” ปรากฏ 3 ครั้งสำหรับทีม A

นอกจากนี้เรายังสามารถใช้ตัวดำเนินการ OR และ AND เพื่อระบุเงื่อนไขหลายข้อในคำสั่ง WHERE

ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อคำนวณความถี่ของค่าในคอลัมน์ตำแหน่ง โดยที่ทีมเท่ากับ “A” และ ตำแหน่งเท่ากับ “Guard”:

 /*calculate frequency of position where team is 'A' and position is 'Guard'*/
proc freq data =my_data;
    where team='A' and position='Guard';
    position tables ;
run ; 

เอาต์พุตจะแสดงความถี่ของค่าตัวแปรตำแหน่งเฉพาะสำหรับบรรทัดที่ทีมเท่ากับ “A” และตำแหน่งเท่ากับ “Guard”

หมายเหตุ : คุณสามารถดูเอกสาร PROC FREQ ฉบับเต็มได้ ที่นี่

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

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

วิธีใช้สรุปขั้นตอนใน SAS
วิธีใช้ Proc Tabulate ใน SAS
วิธีใช้การจัดเรียง Proc ใน SAS

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

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