1

hr1 <- hr %>% 
  mutate(Employee_Status = as.factor(ifelse(left == 0 , 'Stayed' , 'Left')))
t.test(hr1$average_montly_hours ~ hr1$Employee_Status)
## 
##  Welch Two Sample t-test
## 
## data:  hr1$average_montly_hours by hr1$Employee_Status
## t = 7.5323, df = 4875.1, p-value = 5.907e-14
## alternative hypothesis: true difference in means between group Left and group Stayed is not equal to 0
## 95 percent confidence interval:
##   6.183384 10.534631
## sample estimates:
##   mean in group Left mean in group Stayed 
##             207.4192             199.0602

There is a significant difference between means, where employees that left work at least 6 hours more than those who stay.

Employees that left, on average, work more hours, at least 3% more.

To reduce employee attrition, average monthly hours can be reduced by 3%, for those that work longer hours.

plot_ly(hr1 ,
        x = ~Employee_Status ,
        y = ~average_montly_hours ,
        type = 'box' , 
        color = ~Employee_Status ,
        colors = c('red' , 'blue')) %>%
      layout(title = 'Employees that left, on average, work more hours, at least 3% more')

2

  t.test(hr1$number_project ~ hr1$Employee_Status)
## 
##  Welch Two Sample t-test
## 
## data:  hr1$number_project by hr1$Employee_Status
## t = 2.1663, df = 4236.5, p-value = 0.03034
## alternative hypothesis: true difference in means between group Left and group Stayed is not equal to 0
## 95 percent confidence interval:
##  0.006540119 0.131136535
## sample estimates:
##   mean in group Left mean in group Stayed 
##             3.855503             3.786664

There is a not a significant difference between means, given the p-value of .03, meaning that the number of projects worked by employees has no bearing on whether employees leave.

The number of projects worked by employees, seems to have no impact on employee attrition.

  plot_ly(hr1 ,
          x = ~Employee_Status ,
          y = ~number_project ,
          type = 'box' , 
          color = ~Employee_Status ,
          colors = c('red' , 'blue')) %>%
    layout(title = 'The number of projects worked by employees, seems to have no impact on employee attrition')  

3

  t.test(hr1$satisfaction_level ~ hr1$Employee_Status)
## 
##  Welch Two Sample t-test
## 
## data:  hr1$satisfaction_level by hr1$Employee_Status
## t = -46.636, df = 5167, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group Left and group Stayed is not equal to 0
## 95 percent confidence interval:
##  -0.2362417 -0.2171815
## sample estimates:
##   mean in group Left mean in group Stayed 
##            0.4400980            0.6668096

There is a significant difference between means, where employees that leave are about 53% less satisfied than those who stayed (.236/.440).

Employees who have left tend to be about 53% less satisfied than those who stay.

 plot_ly(hr1 ,
          x = ~Employee_Status ,
          y = ~satisfaction_level ,
          type = 'box' , 
          color = ~Employee_Status ,
          colors = c('red' , 'blue')) %>%
    layout(title = 'Employees who have left tend to be about 53% less satisfied than those who stay')  

4

 t.test(hr1$last_evaluation ~ hr1$Employee_Status)
## 
##  Welch Two Sample t-test
## 
## data:  hr1$last_evaluation by hr1$Employee_Status
## t = 0.72534, df = 5154.9, p-value = 0.4683
## alternative hypothesis: true difference in means between group Left and group Stayed is not equal to 0
## 95 percent confidence interval:
##  -0.004493874  0.009772224
## sample estimates:
##   mean in group Left mean in group Stayed 
##            0.7181126            0.7154734

There is a not a significant difference between means, given the p-value of .04683, meaning that the employees score on their last evaluation has no bearing on whether employees leave.

There is no evidence to suggest that an employees last evaluation score impacts whether or not they stay at or leave the company.

plot_ly(hr1 ,
          x = ~Employee_Status ,
          y = ~last_evaluation ,
          type = 'box' , 
          color = ~Employee_Status ,
          colors = c('red' , 'blue')) %>%
    layout(title = 'There is no evidence to suggest that an employees last evaluation score impacts whether or not they stay at or leave the company')