我有一张 table
员工详细信息:
EmpID | WorkingPlaces | Salary
1001 | Bangalore | 5000
1001 | Chennai | 6000
1002 | Bombay | 1000
1002 | Chennai | 500
1003 | Pune | 2000
1003 | Mangalore | 1000
同一名员工在一个月内在不同的地方工作。如何找到薪资最高的 2 名员工。
结果表应该如下所示
EmpID | WorkingPlaces | Salary
1001 | Chennai | 6000
1001 | Bangalore | 5000
1003 | Pune | 2000
1003 | Mangalore | 1000
我的代码:R语言
knime.out <- aggregate(x= $"EmpID", by = list(Thema = $"WorkingPlaces", Project = $"Salary"), FUN = "length") [2]
但这并没有给我预期的结果。请帮助我更正代码。
最佳答案
我们可以尝试使用dplyr
library(dplyr)
df1 %>%
group_by(EmpID) %>%
mutate(SumSalary = sum(Salary)) %>%
arrange(-SumSalary, EmpID) %>%
head(4) %>%
select(-SumSalary)
关于r - 如何使用 R 编程按列值分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42504927/