R 如何分组、汇总并选择最小值和最大值?
以上是数据帧。如果我想按索赔对索赔进行分组并选择最小的外汇,我会这样做:R 如何分组、汇总并选择最小值和最大值?,r,dplyr,tidyverse,R,Dplyr,Tidyverse,以上是数据帧。如果我想按索赔对索赔进行分组并选择最小的外汇,我会这样做: Fx claim_x 1 0.00 0 2 0.05 0 3 0.06 0 4 0.10 0 5 0.30 0 6 0.35 100 7 0.50 350 8 0.60 350 9 0.70 850 10
Fx claim_x
1 0.00 0
2 0.05 0
3 0.06 0
4 0.10 0
5 0.30 0
6 0.35 100
7 0.50 350
8 0.60 350
9 0.70 850
10 0.79 2350
11 0.90 4850
12 1.00 4850
min <- df %>% dplyr::group_by(claim_x) %>% dplyr::summarise(Fx=min(Fx))
min%dplyr::group_by(claim_x)%%>%dplyr::summary(Fx=min(Fx))
如果我想要最大值,我会这样做:
Fx claim_x
1 0.00 0
2 0.05 0
3 0.06 0
4 0.10 0
5 0.30 0
6 0.35 100
7 0.50 350
8 0.60 350
9 0.70 850
10 0.79 2350
11 0.90 4850
12 1.00 4850
min <- df %>% dplyr::group_by(claim_x) %>% dplyr::summarise(Fx=min(Fx))
max%dplyr::group_by(claim_x)%%>%dplyr::summary(Fx=max(Fx))
问题是,如何在同一列中同时选择最小值和最大值?因此,输出应具有与输入相同的结构,即仅包含Fx和claim_x列的数据框
输出应为:
max <- points %>% dplyr::group_by(claim_x) %>% dplyr::summarise(Fx=max(Fx))
#一个tible:9 x 2
索赔×外汇
1 0 0
2 0 0.3
3 100 0.35
4 350 0.5
5 350 0.6
6 850 0.7
7 2350 0.79
8 4850 0.9
9 4850 1
我们可以使用范围
并将其作为列表
列,然后取消测试
# A tibble: 9 x 2
claim_x Fx
<dbl> <dbl>
1 0 0
2 0 0.3
3 100 0.35
4 350 0.5
5 350 0.6
6 850 0.7
7 2350 0.79
8 4850 0.9
9 4850 1
数据
df但我需要它们都在同一个位置column@athletic_coder请检查最后一个,已更新
df <- structure(list(Fx = c(0, 0.05, 0.06, 0.1, 0.3, 0.35, 0.5, 0.6,
0.7, 0.79, 0.9, 1), claim_x = c(0L, 0L, 0L, 0L, 0L, 100L, 350L,
350L, 850L, 2350L, 4850L, 4850L)), class = "data.frame",
row.names = c("1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"))