R 有条件地将行合并为一行,并进行求和和和平均
我有一张这样的桌子: 学生证 等级 周 单位 等级 期间 1. A. 1. 2. 50 90 1. A. 1. 3. 100 120 1. B 1. 3. 70 30 2. B 4. 1. 80 60 2. B 4. 1. 90 60 2. B 5. 2. 100 90R 有条件地将行合并为一行,并进行求和和和平均,r,R,我有一张这样的桌子: 学生证 等级 周 单位 等级 期间 1. A. 1. 2. 50 90 1. A. 1. 3. 100 120 1. B 1. 3. 70 30 2. B 4. 1. 80 60 2. B 4. 1. 90 60 2. B 5. 2. 100 90 我希望这就是你想要的: library(dplyr) df %>% group_by(Student_ID, Class, Week) %>% summarise(Grade = weighted.mean
我希望这就是你想要的:
library(dplyr)
df %>%
group_by(Student_ID, Class, Week) %>%
summarise(Grade = weighted.mean(Grade, Units),
Duration = sum(Duration),
Units = sum(Units)) %>%
relocate(Units, .after = Week)
# A tibble: 4 x 6
# Groups: Student_ID, Class [3]
Student_ID Class Week Units Grade Duration
<int> <chr> <int> <int> <dbl> <int>
1 1 A 1 5 80 210
2 1 B 1 3 70 30
3 2 B 4 2 85 120
4 2 B 5 2 100 90
库(dplyr)
df%>%
分组依据(学生ID、班级、周)%>%
汇总(等级=加权平均值(等级,单位),
持续时间=总和(持续时间),
单位=总和(单位))%>%
重新定位(单位,.周后)
#一个tibble:4x6
#分组:学生ID,班级[3]
学生ID班级周单位年级时长
1A1580210
21B137030
32B285120
42B5210090