วิธีการคำนวณความสัมพันธ์ตามกลุ่มใน r
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อคำนวณความสัมพันธ์ระหว่างตัวแปรสองตัวตามกลุ่มใน R:
library (dplyr)
df %>%
group_by(group_var) %>%
summarize(cor=cor(var1, var2))
ไวยากรณ์เฉพาะนี้จะคำนวณ ความสัมพันธ์ ระหว่าง var1 และ var2 โดยจัดกลุ่มตาม group_var
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: คำนวณความสัมพันธ์ตามกลุ่มใน R
สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ซึ่งมีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลจากทีมต่างๆ:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
points=c(18, 22, 19, 14, 14, 11, 20, 28),
assists=c(2, 7, 9, 3, 12, 10, 14, 21))
#view data frame
df
team points assists
1 to 18 2
2 to 22 7
3 A 19 9
4 A 14 3
5 B 14 12
6 B 11 10
7 B 20 14
8 B 28 21
เราสามารถใช้ไวยากรณ์ต่อไปนี้จากแพ็คเกจ dplyr เพื่อคำนวณความสัมพันธ์ระหว่าง คะแนน และ การช่วยเหลือ ซึ่งจัดกลุ่มตาม ทีม :
library (dplyr)
df %>%
group_by(team) %>%
summarize(cor=cor(points, assists))
# A tibble: 2 x 2
team horn
1 A 0.603
2 B 0.982
จากผลลัพธ์เราจะเห็นได้ว่า:
- ค่าสัมประสิทธิ์สหสัมพันธ์ระหว่างคะแนนและแอสซิสต์สำหรับทีม A คือ 0.603
- ค่าสัมประสิทธิ์สหสัมพันธ์ระหว่างคะแนนและแอสซิสต์สำหรับทีม B คือ 0.982
เนื่องจากสัมประสิทธิ์สหสัมพันธ์ทั้งสองเป็นบวก สิ่งนี้บอกเราว่าความสัมพันธ์ระหว่างคะแนนและแอสซิสต์สำหรับทั้งสองทีมนั้นเป็นเชิงบวก
ที่เกี่ยวข้อง: อะไรคือความสัมพันธ์ที่ “แข็งแกร่ง”?
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่นๆ ใน R:
วิธีนับค่าที่ไม่ซ้ำตามกลุ่มใน R
วิธีคำนวณผลรวมตามกลุ่มใน R
วิธีคำนวณค่าเฉลี่ยต่อกลุ่มใน R
วิธีคำนวณสถิติสรุปตามกลุ่มใน R