根据另一个变量(工作满意度)计算一个变量(薪水)的均值和标准差

Calculate mean and sd of a variable(salary) depending another variable(JobSatisfaction)

我在数据集上有两列,我知道我必须使用函数 ddply 和 summarize 但我不知道如何开始。

希望这能让你入门:

data %>%
  group_by(Satisfaction) %>%
  summarise(Mean = mean(Salary),
            SD = sd(Salary))
# A tibble: 7 x 3
  Satisfaction    Mean     SD
         <int>   <dbl>  <dbl>
1            1  12481.  1437.
2            2  31965.  5235.
3            3  45844.  7631.
4            4  69052.  9257.
5            5  79555. 12975.
6            6 100557. 13739.
7            7 111414. 19139.

首先,您应该使用 group_by 动词按您感兴趣的变量对数据进行分组。然后,正如您所提到的,您可以使用 summarise 动词来执行一个函数关于组的数据。您可以通过使用 ,.

分隔要创建的新列来一次执行多个操作

回想一下,%>% 管道运算符将一个函数的输出作为第一个参数定向到下一个函数。

示例数据:

set.seed(3)
data <- data.frame(Salary = sapply(rep(1:7,each = 10), function(x){floor(runif(1,x*10000,x*20000))}),
                   Satisfaction = rep(1:7,each = 10))