วิธีการคำนวณสถิติสรุปใน r โดยใช้ dplyr
คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อคำนวณสถิติสรุปสำหรับตัวแปรตัวเลขทั้งหมดในกรอบข้อมูลใน R โดยใช้ฟังก์ชันในแพ็คเกจ dplyr :
library (dplyr) library (tidyr) df %>% summarise(across(where(is. numeric ), .fns = list(min = min, median = median, mean = mean, stdev = sd, q25 = ~quantile(., 0.25 ), q75 = ~quantile(., 0.75 ), max = max))) %>% pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))
ฟังก์ชัน summarise() มาจากแพ็คเกจ dplyr และใช้ในการคำนวณสถิติสรุปสำหรับตัวแปร
ฟังก์ชัน pivot_longer() มาจากแพ็คเกจ Tidyr และใช้เพื่อจัดรูปแบบเอาต์พุตเพื่อให้อ่านง่ายขึ้น
ไวยากรณ์เฉพาะนี้จะคำนวณสถิติสรุปต่อไปนี้สำหรับตัวแปรตัวเลขแต่ละตัวในกรอบข้อมูล:
- ค่าต่ำสุด
- ค่ามัธยฐาน
- ค่าเฉลี่ย
- ส่วนเบี่ยงเบนมาตรฐาน
- เปอร์เซ็นไทล์ที่ 25
- เปอร์เซ็นไทล์ที่ 75
- ค่าสูงสุด
ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ
ตัวอย่าง: คำนวณสถิติสรุปใน R โดยใช้ dplyr
สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ใน R ซึ่งมีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'), points=c(12, 15, 19, 14, 24, 25, 39, 34), assists=c(6, 8, 8, 9, 12, 6, 8, 10), rebounds=c(9, 9, 8, 10, 8, 4, 3, 3)) #view data frame df team points assists rebounds 1 to 12 6 9 2 A 15 8 9 3 A 19 8 8 4 A 14 9 10 5 B 24 12 8 6 B 25 6 4 7 B 39 8 3 8 B 34 10 3
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อคำนวณสถิติสรุปสำหรับตัวแปรตัวเลขแต่ละตัวในกรอบข้อมูล:
library (dplyr) library (tidyr) #calculate summary statistics for each numeric variable in data frame df %>% summarise(across(where(is. numeric ), .fns = list(min = min, median = median, mean = mean, stdev = sd, q25 = ~quantile(., 0.25 ), q75 = ~quantile(., 0.75 ), max = max))) %>% pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value ')) # A tibble: 3 x 8 variable min median mean stdev q25 q75 max 1 points 12 21.5 22.8 9.74 14.8 27.2 39 2 assists 6 8 8.38 2.00 7.5 9.25 12 3 rebounds 3 8 6.75 2.92 3.75 9 10
จากผลลัพธ์เราจะเห็นได้ว่า:
- ค่าต่ำสุดในคอลัมน์คะแนนคือ 12
- ค่ามัธยฐานในคอลัมน์คะแนนคือ 21.5
- ค่าเฉลี่ยในคอลัมน์คะแนนคือ 22.8
และอื่นๆ
หมายเหตุ : ในตัวอย่างนี้ เราใช้ฟังก์ชัน dplyr across() คุณสามารถค้นหาเอกสารฉบับเต็มสำหรับฟังก์ชันนี้ ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการใช้งานฟังก์ชันทั่วไปอื่นๆ โดยใช้ dplyr:
วิธีสรุปข้อมูลแต่เก็บทุกคอลัมน์โดยใช้ dplyr
วิธีสรุปหลายคอลัมน์โดยใช้ dplyr
วิธีการคำนวณค่าเบี่ยงเบนมาตรฐานโดยใช้ dplyr