【发布时间】:2021-03-09 07:38:48
【问题描述】:
我有一个如下的 data.frame:
GROUP OGS valMax
1 Group1 A 81.5
2 Group1 B 87.1
3 Group1 C 66.2
4 Group2 D 7.2
5 Group2 E 5.3
6 Group2 F 10.1
我正在尝试通过填充“valMax”的最大值来创建新列“groupMax”。预期的输出是:
GROUP OGS valMax groupMax
1 Group1 A 81.5 87.1
2 Group1 B 87.1 87.1
3 Group1 C 66.2 87.1
4 Group2 D 7.2 10.1
5 Group2 E 5.3 10.1
6 Group2 F 10.1 10.1
我做了以下事情:
library(tidyverse)
library(magrittr)
df %>% group_by(GROUP) %>% mutate(groupMax = max(valMax))
我得到的错误是,
变异错误(groupMax = max(valMax)):找不到对象 'valMax'
数据屏蔽在这里不起作用吗?
提前致谢。
【问题讨论】:
-
groupby应该是group_by。除此之外,您的代码看起来是正确的。您确定列名为valMax吗?names(valMax)返回什么? -
请在reproducible format(如
dput)中分享您的数据,以便我们可以复制/粘贴它进行测试。您发布的内容似乎有些不对劲。您应该收到不同的错误消息。