วิธีใช้ xtabs() ใน r เพื่อคำนวณความถี่
ฟังก์ชัน xtabs() ใน R ช่วยให้คุณสามารถคำนวณความถี่ของตัวแปรตั้งแต่หนึ่งตัวขึ้นไปได้อย่างรวดเร็ว
มันใช้ไวยากรณ์พื้นฐานต่อไปนี้:
xtabs(~variable_name, ข้อมูล=ข้อมูล)
ทอง:
- Variable_name: ตัวแปรที่คุณต้องการคำนวณความถี่
- data: ชื่อของบล็อกข้อมูลที่ตัวแปรมา
บทช่วยสอนนี้แสดงตัวอย่างการใช้งานฟังก์ชันนี้ในทางปฏิบัติหลายตัวอย่าง
ตัวอย่างที่ 1: ใช้ xtabs() สำหรับความถี่ทิศทางเดียว
รหัสต่อไปนี้แสดงวิธีการใช้ xtabs() เพื่อคำนวณความถี่สำหรับตัวแปร ทีม :
#create data frame df <- data.frame(team= rep (c(' A ', ' B ', ' C '), times =c(27, 33, 40)), position= rep (c(' Guard ', ' Forward ', ' Center '), times =c(20, 50, 30)), points= runif (100, 1, 50)) #view first six rows of data frame head(df) team position points 1A Guard 14.00992 2 A Guard 19.23407 3A Guard 29.06981 4A Guard 45.50218 5A Guard 10.88241 6A Guard 45.02109 #calculate frequencies of team variable xtabs(~team, data=df) team ABC 27 33 40
จากผลลัพธ์เราจะเห็นได้ว่า:
- ทีม A ปรากฏตัว 27 ครั้งใน data frame
- ทีม A ปรากฏตัว 33 ครั้งใน data frame
- ทีม A ปรากฏตัว 40 ครั้งใน data frame
ตัวอย่างที่ 2: ใช้ xtabs() สำหรับความถี่แบบสองทิศทาง
รหัสต่อไปนี้แสดงวิธีใช้ xtabs() เพื่อคำนวณความถี่แบบสองทิศทางสำหรับ ทีม และตัวแปร ตำแหน่ง :
#create data frame df <- data.frame(team= rep (c(' A ', ' B ', ' C '), times =c(27, 33, 40)), position= rep (c(' Guard ', ' Forward ', ' Center '), times =c(20, 50, 30)), points= runif (100, 1, 50)) #calculate frequencies of team and position variables xtabs(~team+position, data=df) position team Center Forward Guard A 0 7 20 B 0 33 0 C 30 10 0
จากผลลัพธ์เราจะเห็นได้ว่า:
- ทีม A มีเซนเตอร์ 0 คน
- มีผู้โจมตี 7 คนในทีม A
- มีการ์ด 20 คนในทีม A
และอื่นๆ
การใช้ xtabs() สำหรับความถี่ n-way
ฟังก์ชัน xtabs() สามารถใช้คำนวณความถี่ของตัวแปรจำนวนเท่าใดก็ได้โดยใช้ไวยากรณ์ต่อไปนี้:
xtabs(~variable1+variable2+variable3+...+variable n , data=df)
ในทางปฏิบัติ ฟังก์ชันนี้มักใช้ในการคำนวณความถี่ทิศทางเดียวและสองทิศทาง
แหล่งข้อมูลเพิ่มเติม
วิธีการคำนวณความถี่สัมพัทธ์โดยใช้ dplyr
วิธีเรียกใช้ฟังก์ชัน COUNTIF ใน R
วิธีการคำนวณผลรวมสะสมใน R