R 基于其他列查找列值之和
假设我有一个R 基于其他列查找列值之和,r,dataframe,R,Dataframe,假设我有一个data.framedf,如下所示: df <- tribble( ~id, ~name, ~group, ~score, 01, "john", "group_1", 80, 01, "john", "group_3", 85, 01, "john", "group_2",
data.frame
df,如下所示:
df <- tribble(
~id, ~name, ~group, ~score,
01, "john", "group_1", 80,
01, "john", "group_3", 85,
01, "john", "group_2", 75,
02, "adam", "group_2", 80,
02, "adam", "group_1", 85
)
df您可以使用这个。我假设您希望使用group
列值对数据进行分组
library(dplyr)
data <- tribble(
~id, ~name, ~group, ~score,
01, "john", "group_1", 80,
01, "john", "group_3", 85,
01, "john", "group_2", 75,
02, "adam", "group_2", 80,
02, "adam", "group_1", 85
)
data %>%
group_by(group) %>%
summarise(avg = mean(score, na.rm = TRUE))
# A tibble: 3 x 2
group avg
<chr> <dbl>
1 group_1 82.5
2 group_2 77.5
3 group_3 85
库(dplyr)
数据%
分组依据(分组)%>%
总结(平均值=平均值(分数,na.rm=真实值))
#一个tibble:3x2
组平均值
1组_1 82.5
2组2 77.5
3组3 85
您可以使用这个。我假设您希望使用group
列值对数据进行分组
library(dplyr)
data <- tribble(
~id, ~name, ~group, ~score,
01, "john", "group_1", 80,
01, "john", "group_3", 85,
01, "john", "group_2", 75,
02, "adam", "group_2", 80,
02, "adam", "group_1", 85
)
data %>%
group_by(group) %>%
summarise(avg = mean(score, na.rm = TRUE))
# A tibble: 3 x 2
group avg
<chr> <dbl>
1 group_1 82.5
2 group_2 77.5
3 group_3 85
库(dplyr)
数据%
分组依据(分组)%>%
总结(平均值=平均值(分数,na.rm=真实值))
#一个tibble:3x2
组平均值
1组_1 82.5
2组2 77.5
3组3 85
此外。为数据创建新列。这是我的安卓系统给我的第一个答案。这有点笨拙
data %>%
group_by(group) %>%
mutate(avg = mean(score, na.rm = TRUE))
另外。为数据创建新列。这是我的安卓系统给我的第一个答案。这有点笨拙
data %>%
group_by(group) %>%
mutate(avg = mean(score, na.rm = TRUE))
@USER2974951如何聚合分组?尝试:aggregate(score~group,df,mean)
@USER2974951如何聚合分组?尝试:aggregate(score~group,df,mean)