如何在R中找到分组累积平均值?
要找到分组累积平均值,我们可以使用 dplyr 包的 cummean 函数。
例如,如果我们有一个名为 df 的数据框,其中包含一个分类列 Group 和一个数值列 Response 那么可以使用下面给出的命令找到分组累积平均值 -
df%>%group_by(Group)%>%mutate(CM=cummean(Response))
示例 1
以下代码段创建了一个示例数据框 -
Group<-sample(LETTERS[1:4],20,replace=TRUE)输出结果Score<-rpois(20,50)
df1<-data.frame(Group,Score)
df1
创建以下数据框 -
Group Score1 B 48
2 D 54
3 B 44
4 C 50
5 B 50
6 C 48
7 A 58
8 B 44
9 B 44
10 C 51
11 C 50
12 B 48
13 B 63
14 D 43
15 C 53
16 C 52
17 C 59
18 B 46
19 A 51
20 C 58
为了加载 dplyr 包并在 df1 中找到 Score 的分组累积平均值,请将以下代码添加到上述代码段中 -
library(dplyr)输出结果df1 %>% group_by(Group) %>% mutate(Cum_Mean = cummean(Score))
# A tibble: 20 x 3
# Groups: Group [4]
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
Group Score Cum_Mean<chr> <int> <dbl>
1 B 48 48
2 D 54 54
3 B 44 46
4 C 50 50
5 B 50 47.3
6 C 48 49
7 A 58 58
8 B 44 46.5
9 B 44 46
10 C 51 49.7
11 C 50 49.8
12 B 48 46.3
13 B 63 48.7
14 D 43 48.5
15 C 53 50.4
16 C 52 50.7
17 C 59 51.9
18 B 46 48.4
19 A 51 54.5
20 C 58 52.6
示例 2
以下代码段创建了一个示例数据框 -
Department<-sample(c("Finance","Marketing","HR"),20,replace=TRUE)Salary<-sample(20000:50000,20)
df2<-data.frame(Department,Salary)
df2
创建以下数据框 -
Department Salary1 HR 20179
2 Finance 30870
3 Marketing 48467
4 HR 22429
5 Marketing 26829
6 Finance 34267
7 HR 27498
8 Marketing 38346
9 Finance 31771
10 HR 30438
11 HR 26913
12 HR 30034
13 Finance 26277
14 HR 43676
15 HR 45958
16 Finance 37371
17 HR 41023
18 HR 34838
19 Finance 44879
20 HR 20964
要在 df2 中找到 Salary 的分组累积平均值,请将以下代码添加到上述代码段中 -
df2 %>% group_by(Department) %>% mutate(Cum_Mean=cummean(Salary))输出结果# A tibble: 20 x 3
# Groups: Department [3]
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
Department Salary Cum_Mean<chr> <int> <dbl>
1 HR 20179 20179
2 Finance 30870 30870
3 Marketing 48467 48467
4 HR 22429 21304
5 Marketing 26829 37648
6 Finance 34267 32568.
7 HR 27498 23369.
8 Marketing 38346 37881.
9 Finance 31771 32303.
10 HR 30438 25136
11 HR 26913 25491.
12 HR 30034 26248.
13 Finance 26277 30796.
14 HR 43676 28738.
15 HR 45958 30891.
16 Finance 37371 32111.
17 HR 41023 32016.
18 HR 34838 32299.
19 Finance 44879 34239.
20 HR 20964 31268.
以上是 如何在R中找到分组累积平均值? 的全部内容, 来源链接: utcz.com/z/335436.html