วิธีการคำนวณโหมดตามกลุ่มใน r (พร้อมตัวอย่าง)
โหมด ของชุดข้อมูลแสดงถึงค่าที่พบบ่อยที่สุด
ซอฟต์แวร์ทางสถิติ R ไม่มีฟังก์ชันในตัวสำหรับคำนวณโหมดของชุดข้อมูล แต่คุณสามารถใช้ฟังก์ชันต่อไปนี้เพื่อคำนวณโหมด:
find_mode <- function (x) { u <- unique(x) tab <- tabulate(match(x, u)) u[tab == max(tab)] }
ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้เพื่อคำนวณโหมดตามกลุ่มใน R
ตัวอย่างที่ 1: คำนวณโหมดตามกลุ่มใน R (โหมดเดียว)
สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ใน R ที่แสดงคะแนนที่ผู้เล่นบาสเก็ตบอลจากทีมต่างๆ ทำไว้:
#define data frame df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'), points=c(5, 7, 7, 9, 12, 12, 10, 14)) #view data frame df team points 1 to 5 2 to 7 3 to 7 4 to 9 5 B 12 6 B 12 7 B 10 8 B 14
เราสามารถใช้รหัสต่อไปนี้เพื่อคำนวณโหมดของ คะแนน ซึ่งจัดกลุ่มตาม ทีม :
library (dplyr)
#define function to calculate mode
find_mode <- function (x) {
u <- unique(x)
tab <- tabulate(match(x, u))
u[tab == max(tab)]
}
#calculate mode of 'points' by 'team'
df %>%
group_by(team) %>%
summarize(mode_points = find_mode(points))
# A tibble: 2 x 2
team mode_points
1 to 7
2 B 12
จากผลลัพธ์เราจะเห็นได้ว่า:
- โหมดคะแนนสำหรับทีม A คือ 7
- โหมดคะแนนสำหรับทีม B คือ 12
ตัวอย่างที่ 2: คำนวณโหมดตามกลุ่มใน R (หลายโหมด)
สมมติว่าเรามี data frame ต่อไปนี้ใน R:
#define data frame df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'), points=c(5, 7, 7, 9, 12, 12, 10, 10)) #view data frame df team points 1 to 5 2 to 7 3 to 7 4 to 9 5 B 12 6 B 12 7 B 10 8 B 10
เราสามารถใช้รหัสต่อไปนี้เพื่อคำนวณโหมดของ คะแนน ซึ่งจัดกลุ่มตาม ทีม :
library (dplyr)
#define function to calculate mode
find_mode <- function (x) {
u <- unique(x)
tab <- tabulate(match(x, u))
u[tab == max(tab)]
}
#calculate mode of 'points' by 'team'
df %>%
group_by(team) %>%
summarize(mode_points = find_mode(points))
# A tibble: 3 x 2
# Groups: team [2]
team mode_points
1 to 7
2 B 12
3 B 10
จากผลลัพธ์เราจะเห็นได้ว่า:
- โหมดคะแนนสำหรับทีม A คือ 7
- วิธีการให้คะแนนสำหรับทีม B คือ 12 และ 10
ในตัวอย่างนี้ ค่าจุดสองจุดเกิดขึ้นบ่อยที่สุดสำหรับทีม B ดังนั้นค่าโหมดเหล่านี้แต่ละค่าจึงถูกส่งกลับในบรรทัดที่แยกจากกันสำหรับทีม B ในเอาต์พุต
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีคำนวณสถิติเชิงพรรณนาอื่นๆ ใน R:
วิธีการคำนวณผลสรุปของตัวเลขห้าตัวใน R
วิธีสร้างตารางสรุปใน R
วิธีใช้ฟังก์ชัน Mean() ใน R