<分区>
我正在处理包含数千行和多列的庞大数据集。我想使用 Dplyr 在列中查找组的最大值,并在同一表的另一列中改变结果。这是我的数据示例:
df <- tibble(a = rep(letters[1:3], each = 3), b = seq(0.1,0.9, length.out = 9))
我想在每组 a
列中找到最大值。我知道我可以使用以下代码在表格中的每个组中显示最大值:
df %>% group_by(a) %>% summarise_all(list(~ max(.)))
产生:
# A tibble: 3 x 2
a b
<chr> <dbl>
1 a 0.2
2 b 0.5
3 c 0.8
但这不是我想要的。我想要一个保留原始数据的表,但有一个额外的列 c
这样 b
列中的每个值都将在 c
列中具有相应的值> 显示 b
列中每个数据点所属的每个组中的最大值。我想要的预期结果如下:
# A tibble: 9 x 3
a b c
<chr> <dbl> <dbl>
1 a 0.1 0.3
2 a 0.2 0.3
3 a 0.3 0.3
4 b 0.4 0.6
5 b 0.5 0.6
6 b 0.6 0.6
7 c 0.7 0.9
8 c 0.8 0.9
9 c 0.9 0.9
我很乐意提供帮助。谢谢。