gpt4 book ai didi

mysql - 有人可以帮我用 R 编程解决这个问题吗?

转载 作者:行者123 更新时间:2023-12-05 04:20:24 27 4
gpt4 key购买 nike

我正在处理一个包含 employeeID、jobtitile 和 salery 列的表。我正在尝试在 SQL 和 R 中查询相同的结果,但遇到了一些困难。

SELECT EmployeeID, jobtitle,AVG(Salary) OVER(PARTITION BY jobtitle)
FROM EmployeeSalary

此查询显示正确的结果。当我在 R 中使用以下代码执行相同的查询时:

employee_data %>% 
select(employeeid, jobtitle,salary) %>%
group_by(jobtitle) %>%
summarise(mean(salary))

输出仅显示 jobtitle 和 mean salery 列。即使我在 group_by 子句中使用 employeeid 而不是 select。还是不行

最佳答案

你应该在这里使用mutate而不是summarisesummarise 将仅显示来自您的group_by 的列。

library(dplyr)
employee_data <- data.frame(employeeid = c(1, 2, 3, 4, 5, 6),
jobtitle = c('a', 'a', 'a', 'b', 'b', 'c'),
salary = c(100, 200, 300, 250, 400, 400))
employee_data %>%
select(employeeid, jobtitle,salary) %>%
group_by(jobtitle) %>%
mutate(avg_salary = mean(salary)) %>%
ungroup

#> # A tibble: 6 × 4
#> employeeid jobtitle salary avg_salary
#> <dbl> <fct> <dbl> <dbl>
#> 1 1 a 100 200
#> 2 2 a 200 200
#> 3 3 a 300 200
#> 4 4 b 250 325
#> 5 5 b 400 325
#> 6 6 c 400 400

关于mysql - 有人可以帮我用 R 编程解决这个问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74492041/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com