Store24 (A): Managing Employee Retention


TASK 2a

Please critically read the Harvard Business School case study Store24 (A): Managing Employee Retention, by Frances X. Frei and Dennis Campbell

This case provides a retailing context in which employee retention strategies are explored through analyzing detailed store-level data. Qualitatively identify the crucial issues being faced by the management. Based on your judgment, prepare a list of the most important questions that matter.


Crucial issues faced by the management are:

  1. What are the strategies for increasing store level employees retention (ie. increasing manager and crew tenure)?

  2. What is the financial impact of manager and crew tenure on store level operating performance?

  3. How important manager and crew tenure are relative to site-location factors in determining store level financial performance?

  4. What would be the best course of action for increasing employee tenure?

  5. What would be the implications of a non-linear relationship between tenure and financial performance in determining how bonuses and other incentives should be tied to retention?


TASK 2b

Play close attention to Exhibit 2 - Variable Names and Descriptions from the case. Understand what each variable means. Go back to the text of the case and relate each variable of Exhibit 2 to the different points of discussion presented in the case. Think about how might a dataset associated with Exhibit 2 help in answering your list of questions from TASK 2a.


Exhibit 2 : Variable Names and Descriptions

Sales : Fiscal Year 2000 Sales

Profit : Fiscal Year 2000 Profit before corporate overhead allocations, rent, and depreciation

MTenure : Average manager tenure during FY-2000 where tenure is defined as the number of months of experience with Store24

CTenure : Average crew tenure during FY-2000 where tenure is defined as the number of months of experience with Store24

Comp : Number of competitors per 10,000 people within a ½ mile radius

Pop : Population within a ½ mile radius Visible 5-point rating on visibility of store front with 5 being the highest

PedCount : 5-point rating on pedestrian foot traffic volume with 5 being the highest

Hours24 : Indicator for open 24 hours or not

Res : Indicator for located in residential vs. industrial area

a) What are the strategies for increasing store level employees retention (ie. increasing manager and crew tenure)?

Some strategies are increasing wages, implementing a bonus program, instituting new training programs, or developing a career development program would be the best course of action for increasing employee tenure.So the firm Store24 needs the best way to go after Jenkins does a proper data analysis of all the stores data.

b) What is the financial impact of manager and crew tenure on store level operating performance?

Long tenure does have positive impacts on store’s operating performance but it does not seem to be the sole cause.

c) How important manager and crew tenure are relative to site-location factors in determining store level financial performance?

Manager tenure average seems to be relatively less in industrial site locations whereas crew tenure average is similar in both the site locations (res & ind). Sales are pretty good when sites are in residential areas with not so big change in profits.

d) What would be the best course of action for increasing employee tenure?

Can’t say yet.

e) What would be the implications of a non-linear relationship between tenure and financial performance in determining how bonuses and other incentives should be tied to retention?

Lets see.


TASK 2c

Download and review the Store24.csv data file associated with this case. You may open it in Excel for convenience.

Using R, read the data into a data frame called store. Play close attention to Exhibit 3 - Summary Statistics from Sample Stores from the CASE. Using R, get the summary statistics of the data. Confirm that the summary statistics generated from R are consistent with Exhibit 3 from the Case.


setwd("C:/Users/HP/Downloads/Intern/WEEK 3 DAY 1")

store.df <- read.csv(paste("Store24.csv", sep=""))
View(store.df)

##summary(store.df)
##library(psych)
##describe(store.df)

apply(store.df[, 2:11], MARGIN=2, FUN=mean)
##        Sales       Profit      MTenure      CTenure          Pop 
## 1.205413e+06 2.763136e+05 4.529644e+01 1.393150e+01 9.825587e+03 
##         Comp   Visibility     PedCount          Res      Hours24 
## 3.787751e+00 3.080000e+00 2.960000e+00 9.600000e-01 8.400000e-01
apply(store.df[, 2:11], MARGIN=2, FUN=sd)
##        Sales       Profit      MTenure      CTenure          Pop 
## 3.045313e+05 8.940408e+04 5.767155e+01 1.769752e+01 5.911674e+03 
##         Comp   Visibility     PedCount          Res      Hours24 
## 1.311390e+00 7.490535e-01 9.924036e-01 1.972788e-01 3.690748e-01
apply(store.df[, 2:11], MARGIN=2, FUN=min)
##        Sales       Profit      MTenure      CTenure          Pop 
## 6.993060e+05 1.221800e+05 0.000000e+00 8.870637e-01 1.046000e+03 
##         Comp   Visibility     PedCount          Res      Hours24 
## 1.651364e+00 2.000000e+00 1.000000e+00 0.000000e+00 0.000000e+00
apply(store.df[, 2:11], MARGIN=2, FUN=max)
##        Sales       Profit      MTenure      CTenure          Pop 
## 2.113089e+06 5.189980e+05 2.779877e+02 1.141519e+02 2.651900e+04 
##         Comp   Visibility     PedCount          Res      Hours24 
## 1.112788e+01 5.000000e+00 5.000000e+00 1.000000e+00 1.000000e+00

TASK 2d

Three very important variables in this analysis are the store Profit, the management tenure (MTenure) and the crew tenure (CTenure).

Use R to measure the mean and standard deviation of Profit.

apply(store.df[3], 2, mean)
##   Profit 
## 276313.6
apply(store.df[3], 2, sd)
##   Profit 
## 89404.08

Use R to measure the mean and standard deviation of MTenure.

apply(store.df[4], 2, mean)
##  MTenure 
## 45.29644
apply(store.df[4], 2, sd)
##  MTenure 
## 57.67155

Use R to measure the mean and standard deviation of CTenure.

apply(store.df[5], 2, mean)
## CTenure 
## 13.9315
apply(store.df[5], 2, sd)
##  CTenure 
## 17.69752

TASK 2e - Sorting and Subsetting data in R

In this TASK, we will learn how to sort a dataframe based on a data column Understand what the following R code does. Copy-Paste it and Execute it in R.

attach(mtcars) View(mtcars)

newdata <- mtcars[order(mpg),] # sort by mpg (ascending) View(newdata)

newdata[1:5,] # see the first 5 rows head(newdata) # see the first 6 rows

newdata <- mtcars[order(-mpg),] # sort by mpg (descending) View(newdata)

detach(mtcars)

R has an inbuilt dataset called mtcars.

In the above code, the order() function helps us sort the data in mtcars, based on a data column called mpg. We can sort in ascending order or descending order. After sorting, notice how we can view the top 5 cars that have the highest and lowest mpg respectively.


TASK 2f- Replicate Exhibit 1 shown in the case, using R

Use R to print the {StoreID, Sales, Profit, MTenure, CTenure} of the top 10 most profitable stores.

attach(store.df)

mostprofitable <- store.df[order(-Profit),] # sort by mpg (descending)
mostprofitable[1:10,]
##    store   Sales Profit   MTenure    CTenure   Pop     Comp Visibility
## 74    74 1782957 518998 171.09720  29.519510 10913 2.319850          3
## 7      7 1809256 476355  62.53080   7.326488 17754 3.377900          2
## 9      9 2113089 474725 108.99350   6.061602 26519 2.637630          2
## 6      6 1703140 469050 149.93590  11.351130 16926 3.184613          3
## 44    44 1807740 439781 182.23640 114.151900 20624 3.628561          3
## 2      2 1619874 424007  86.22219   6.636550  8630 4.235555          4
## 45    45 1602362 410149  47.64565   9.166325 17808 3.472609          5
## 18    18 1704826 394039 239.96980  33.774130  3807 3.994713          5
## 11    11 1583446 389886  44.81977   2.036961 21550 3.272398          2
## 47    47 1665657 387853  12.84790   6.636550 23623 2.422707          2
##    PedCount Res Hours24 CrewSkill MgrSkill  ServQual
## 74        4   1       0      3.50 4.405556  94.73878
## 7         5   1       1      3.94 4.100000  81.57837
## 9         4   1       1      3.22 3.583333 100.00000
## 6         4   1       0      3.58 4.605556  94.73510
## 44        4   0       1      4.06 4.172222  86.84327
## 2         3   1       1      3.20 3.556667  94.73510
## 45        3   1       1      3.58 4.622222 100.00000
## 18        3   1       1      3.18 3.866667  97.36939
## 11        5   1       1      3.43 3.200000 100.00000
## 47        5   1       1      4.23 3.950000  99.80105

Use R to print the {StoreID, Sales, Profit, MTenure, CTenure} of the bottom 10 least profitable stores.

mostprofitable[66:75,]
##    store   Sales Profit     MTenure   CTenure   Pop     Comp Visibility
## 37    37 1202917 187765  23.1985000  1.347023  8870 4.491863          3
## 61    61  716589 177046  21.8184200 13.305950  3014 3.263994          3
## 52    52 1073008 169201  24.1185600  3.416838 14859 6.585143          3
## 54    54  811190 159792   6.6703910  3.876797  3747 3.756011          3
## 13    13  857843 152513   0.6571813  1.577002 14186 4.435671          3
## 32    32  828918 149033  36.0792600  6.636550  9697 4.641468          3
## 55    55  925744 147672   6.6703910 18.365500 10532 6.389294          4
## 41    41  744211 147327  14.9180200 11.926080  9701 4.364600          2
## 66    66  879581 146058 115.2039000  3.876797  1046 6.569790          2
## 57    57  699306 122180  24.3485700  2.956879  3642 2.973376          3
##    PedCount Res Hours24 CrewSkill MgrSkill ServQual
## 37        3   1       1      3.38 4.016667 73.68654
## 61        1   1       1      3.07 3.126667 73.68654
## 52        3   1       1      3.83 3.833333 94.73510
## 54        2   1       1      3.08 3.933333 65.78734
## 13        2   1       1      4.10 3.000000 76.30609
## 32        3   1       0      3.28 3.550000 73.68654
## 55        3   1       1      3.49 3.477778 76.31346
## 41        3   1       1      3.03 3.672222 81.13993
## 66        3   1       1      4.03 3.673333 80.26675
## 57        2   1       1      3.35 2.956667 84.21266
#leastprofitable <- store.df[order(Profit),] # sort by mpg (descending)
#leastprofitable[1:10,]

TASK 2g - Scatter Plots

Use R to draw a scatter plot of Profit vs. MTenure.

library(car)

scatterplotMatrix( store.df[ ,c("Profit","MTenure")],  spread=FALSE, smoother.args=list(lty=2), main="Scatter Plot Matrix")


TASK 2h - Scatter Plots (contd.)

Use R to draw a scatter plot of Profit vs. CTenure.

scatterplotMatrix( store.df[ ,c("Profit","CTenure")],  spread=FALSE, smoother.args=list(lty=2), main="Scatter Plot Matrix")


TASK 2i - Correlation Matrix

Use R to construct a Correlation Matrix for all the variables in the dataset. (Display the numbers up to 2 Decimal places)

cor(store.df)
##                  store       Sales      Profit     MTenure      CTenure
## store       1.00000000 -0.22693400 -0.19993481 -0.05655216  0.019930097
## Sales      -0.22693400  1.00000000  0.92387059  0.45488023  0.254315184
## Profit     -0.19993481  0.92387059  1.00000000  0.43886921  0.257678895
## MTenure    -0.05655216  0.45488023  0.43886921  1.00000000  0.243383135
## CTenure     0.01993010  0.25431518  0.25767890  0.24338314  1.000000000
## Pop        -0.28936691  0.40348147  0.43063326 -0.06089646 -0.001532449
## Comp        0.03194023 -0.23501372 -0.33454148  0.18087179 -0.070281327
## Visibility -0.02648858  0.13065638  0.13569207  0.15651731  0.066506016
## PedCount   -0.22117519  0.42391087  0.45023346  0.06198608 -0.084112627
## Res        -0.03142976 -0.16672402 -0.15947734 -0.06234721 -0.340340876
## Hours24     0.02687986  0.06324716 -0.02568703 -0.16513872  0.072865022
## CrewSkill   0.04866273  0.16402179  0.16008443  0.10162169  0.257154817
## MgrSkill   -0.07218804  0.31163056  0.32284842  0.22962743  0.124045346
## ServQual   -0.32246921  0.38638112  0.36245032  0.18168875  0.081156172
##                     Pop        Comp  Visibility     PedCount         Res
## store      -0.289366908  0.03194023 -0.02648858 -0.221175193 -0.03142976
## Sales       0.403481471 -0.23501372  0.13065638  0.423910867 -0.16672402
## Profit      0.430633264 -0.33454148  0.13569207  0.450233461 -0.15947734
## MTenure    -0.060896460  0.18087179  0.15651731  0.061986084 -0.06234721
## CTenure    -0.001532449 -0.07028133  0.06650602 -0.084112627 -0.34034088
## Pop         1.000000000 -0.26828355 -0.04998269  0.607638861 -0.23693726
## Comp       -0.268283553  1.00000000  0.02844548 -0.146325204  0.21923878
## Visibility -0.049982694  0.02844548  1.00000000 -0.141068116  0.02194756
## PedCount    0.607638861 -0.14632520 -0.14106812  1.000000000 -0.28437852
## Res        -0.236937265  0.21923878  0.02194756 -0.284378520  1.00000000
## Hours24    -0.221767927  0.12957478  0.04692587 -0.275973353 -0.08908708
## CrewSkill   0.282845090 -0.04229731 -0.19745297  0.213672596 -0.15331247
## MgrSkill    0.083554590  0.22407913  0.07348301  0.087475440 -0.03213640
## ServQual    0.123946521  0.01814508  0.20992919 -0.005445552  0.09081624
##                Hours24   CrewSkill    MgrSkill     ServQual
## store       0.02687986  0.04866273 -0.07218804 -0.322469213
## Sales       0.06324716  0.16402179  0.31163056  0.386381121
## Profit     -0.02568703  0.16008443  0.32284842  0.362450323
## MTenure    -0.16513872  0.10162169  0.22962743  0.181688755
## CTenure     0.07286502  0.25715482  0.12404535  0.081156172
## Pop        -0.22176793  0.28284509  0.08355459  0.123946521
## Comp        0.12957478 -0.04229731  0.22407913  0.018145080
## Visibility  0.04692587 -0.19745297  0.07348301  0.209929194
## PedCount   -0.27597335  0.21367260  0.08747544 -0.005445552
## Res        -0.08908708 -0.15331247 -0.03213640  0.090816237
## Hours24     1.00000000  0.10536295 -0.03883007  0.058325655
## CrewSkill   0.10536295  1.00000000 -0.02100949 -0.033516504
## MgrSkill   -0.03883007 -0.02100949  1.00000000  0.356702708
## ServQual    0.05832565 -0.03351650  0.35670271  1.000000000
library(psych)
## 
## Attaching package: 'psych'
## The following object is masked from 'package:car':
## 
##     logit
corr.test(store.df, use="complete")
## Call:corr.test(x = store.df, use = "complete")
## Correlation matrix 
##            store Sales Profit MTenure CTenure   Pop  Comp Visibility
## store       1.00 -0.23  -0.20   -0.06    0.02 -0.29  0.03      -0.03
## Sales      -0.23  1.00   0.92    0.45    0.25  0.40 -0.24       0.13
## Profit     -0.20  0.92   1.00    0.44    0.26  0.43 -0.33       0.14
## MTenure    -0.06  0.45   0.44    1.00    0.24 -0.06  0.18       0.16
## CTenure     0.02  0.25   0.26    0.24    1.00  0.00 -0.07       0.07
## Pop        -0.29  0.40   0.43   -0.06    0.00  1.00 -0.27      -0.05
## Comp        0.03 -0.24  -0.33    0.18   -0.07 -0.27  1.00       0.03
## Visibility -0.03  0.13   0.14    0.16    0.07 -0.05  0.03       1.00
## PedCount   -0.22  0.42   0.45    0.06   -0.08  0.61 -0.15      -0.14
## Res        -0.03 -0.17  -0.16   -0.06   -0.34 -0.24  0.22       0.02
## Hours24     0.03  0.06  -0.03   -0.17    0.07 -0.22  0.13       0.05
## CrewSkill   0.05  0.16   0.16    0.10    0.26  0.28 -0.04      -0.20
## MgrSkill   -0.07  0.31   0.32    0.23    0.12  0.08  0.22       0.07
## ServQual   -0.32  0.39   0.36    0.18    0.08  0.12  0.02       0.21
##            PedCount   Res Hours24 CrewSkill MgrSkill ServQual
## store         -0.22 -0.03    0.03      0.05    -0.07    -0.32
## Sales          0.42 -0.17    0.06      0.16     0.31     0.39
## Profit         0.45 -0.16   -0.03      0.16     0.32     0.36
## MTenure        0.06 -0.06   -0.17      0.10     0.23     0.18
## CTenure       -0.08 -0.34    0.07      0.26     0.12     0.08
## Pop            0.61 -0.24   -0.22      0.28     0.08     0.12
## Comp          -0.15  0.22    0.13     -0.04     0.22     0.02
## Visibility    -0.14  0.02    0.05     -0.20     0.07     0.21
## PedCount       1.00 -0.28   -0.28      0.21     0.09    -0.01
## Res           -0.28  1.00   -0.09     -0.15    -0.03     0.09
## Hours24       -0.28 -0.09    1.00      0.11    -0.04     0.06
## CrewSkill      0.21 -0.15    0.11      1.00    -0.02    -0.03
## MgrSkill       0.09 -0.03   -0.04     -0.02     1.00     0.36
## ServQual      -0.01  0.09    0.06     -0.03     0.36     1.00
## Sample Size 
## [1] 75
## Probability values (Entries above the diagonal are adjusted for multiple tests.) 
##            store Sales Profit MTenure CTenure  Pop Comp Visibility
## store       0.00  1.00   1.00    1.00    1.00 0.89 1.00       1.00
## Sales       0.05  0.00   0.00    0.00    1.00 0.03 1.00       1.00
## Profit      0.09  0.00   0.00    0.01    1.00 0.01 0.26       1.00
## MTenure     0.63  0.00   0.00    0.00    1.00 1.00 1.00       1.00
## CTenure     0.87  0.03   0.03    0.04    0.00 1.00 1.00       1.00
## Pop         0.01  0.00   0.00    0.60    0.99 0.00 1.00       1.00
## Comp        0.79  0.04   0.00    0.12    0.55 0.02 0.00       1.00
## Visibility  0.82  0.26   0.25    0.18    0.57 0.67 0.81       0.00
## PedCount    0.06  0.00   0.00    0.60    0.47 0.00 0.21       0.23
## Res         0.79  0.15   0.17    0.60    0.00 0.04 0.06       0.85
## Hours24     0.82  0.59   0.83    0.16    0.53 0.06 0.27       0.69
## CrewSkill   0.68  0.16   0.17    0.39    0.03 0.01 0.72       0.09
## MgrSkill    0.54  0.01   0.00    0.05    0.29 0.48 0.05       0.53
## ServQual    0.00  0.00   0.00    0.12    0.49 0.29 0.88       0.07
##            PedCount  Res Hours24 CrewSkill MgrSkill ServQual
## store          1.00 1.00    1.00      1.00     1.00     0.37
## Sales          0.01 1.00    1.00      1.00     0.49     0.05
## Profit         0.00 1.00    1.00      1.00     0.37     0.11
## MTenure        1.00 1.00    1.00      1.00     1.00     1.00
## CTenure        1.00 0.22    1.00      1.00     1.00     1.00
## Pop            0.00 1.00    1.00      1.00     1.00     1.00
## Comp           1.00 1.00    1.00      1.00     1.00     1.00
## Visibility     1.00 1.00    1.00      1.00     1.00     1.00
## PedCount       0.00 0.99    1.00      1.00     1.00     1.00
## Res            0.01 0.00    1.00      1.00     1.00     1.00
## Hours24        0.02 0.45    0.00      1.00     1.00     1.00
## CrewSkill      0.07 0.19    0.37      0.00     1.00     1.00
## MgrSkill       0.46 0.78    0.74      0.86     0.00     0.14
## ServQual       0.96 0.44    0.62      0.78     0.00     0.00
## 
##  To see confidence intervals of the correlations, print with the short=FALSE option

TASK 2j - Correlations

Use R to measure the correlation between Profit and MTenure. (Display the numbers up to 2 Decimal places)

library(corrgram)
storea <- store.df[,c("Profit", "MTenure")]
corrgram(storea, order=FALSE, 
         lower.panel=panel.shade,
         upper.panel=panel.pie, 
         text.panel=panel.txt,
         diag.panel=panel.minmax,
         main="Corrgram")

Use R to measure the correlation between Profit and CTenure. (Display the numbers up to 2 Decimal places)

library(corrgram)
storeb <- store.df[,c("Profit", "CTenure")]
corrgram(storeb, order=FALSE, 
         lower.panel=panel.shade,
         upper.panel=panel.pie, 
         text.panel=panel.txt,
         diag.panel=panel.minmax,
         main="Corrgram")


TASK 2k

Use R to construct the following Corrgram based on all variables in the dataset.

library(corrgram)
corrgram(store.df, order=FALSE, 
         lower.panel=panel.shade,
         upper.panel=panel.pie, 
         text.panel=panel.txt,
         diag.panel=panel.minmax,
         main="Corrgram of all Variables")

Critically think about how the Profit is correlated with the other variables (e.g. MTenure, CTenure, Sales, Pop, Comp etc).

cor.test(store.df[,"Profit"],store.df[,"MTenure"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "MTenure"]
## t = 4.1731, df = 73, p-value = 8.193e-05
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.2353497 0.6055175
## sample estimates:
##       cor 
## 0.4388692
cor.test(store.df[,"Profit"],store.df[,"CTenure"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "CTenure"]
## t = 2.2786, df = 73, p-value = 0.02562
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.03262507 0.45786339
## sample estimates:
##       cor 
## 0.2576789
cor.test(store.df[,"Profit"],store.df[,"Sales"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "Sales"]
## t = 20.626, df = 73, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.8818095 0.9513501
## sample estimates:
##       cor 
## 0.9238706
cor.test(store.df[,"Profit"],store.df[,"Pop"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "Pop"]
## t = 4.0767, df = 73, p-value = 0.000115
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.2257341 0.5990460
## sample estimates:
##       cor 
## 0.4306333
cor.test(store.df[,"Profit"],store.df[,"Comp"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "Comp"]
## t = -3.0331, df = 73, p-value = 0.003351
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.5218781 -0.1164191
## sample estimates:
##        cor 
## -0.3345415
cor.test(store.df[,"Profit"],store.df[,"Visibility"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "Visibility"]
## t = 1.1702, df = 73, p-value = 0.2457
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.09416992  0.35181898
## sample estimates:
##       cor 
## 0.1356921
cor.test(store.df[,"Profit"],store.df[,"PedCount"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "PedCount"]
## t = 4.3082, df = 73, p-value = 5.057e-05
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.2486835 0.6144112
## sample estimates:
##       cor 
## 0.4502335
cor.test(store.df[,"Profit"],store.df[,"Res"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "Res"]
## t = -1.3802, df = 73, p-value = 0.1717
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.37294050  0.07001886
## sample estimates:
##        cor 
## -0.1594773
cor.test(store.df[,"Profit"],store.df[,"Hours24"])
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "Hours24"]
## t = -0.21954, df = 73, p-value = 0.8268
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.2511845  0.2024551
## sample estimates:
##         cor 
## -0.02568703

We see that profit and sales are the most highly positively correlated of all the variables following which profit is highly positively correlated to MTenure, Pop & PedCount. We also see a decent positive correlation between profit and MgrSkill and ServQual.

Qualitatively discuss the managerially relevant correlations.

Manager Tenure is highly positively corelated to Sales and profits following which MTenuew is somewhat positively correlated to CTenure, MgrSkill, ServQual, Comp and Visibility. Managerial’s Skill is highly positively correlated to Srevice quality, sales and profits. We also see a positive correlation between managers skill and his tenure as well as Comp.


TASK 2l - Pearson’s Correlation Tests

Run a Pearson’s Correlation test on the correlation between Profit and MTenure. What is the p-value?

cor.test(store.df[,"Profit"],store.df[,"MTenure"], method="pearson")
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "MTenure"]
## t = 4.1731, df = 73, p-value = 8.193e-05
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.2353497 0.6055175
## sample estimates:
##       cor 
## 0.4388692

Run a Pearson’s Correlation test on the correlation between Profit and CTenure. What is the p-value?

cor.test(store.df[,"Profit"],store.df[,"CTenure"], method="pearson")
## 
##  Pearson's product-moment correlation
## 
## data:  store.df[, "Profit"] and store.df[, "CTenure"]
## t = 2.2786, df = 73, p-value = 0.02562
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.03262507 0.45786339
## sample estimates:
##       cor 
## 0.2576789

As p < 0.05 in both cases, it is hopeful that there exists a relationship between profits and employee retention.


TASK 2m - Regression Analysis

Run a regression of Profit on {MTenure, CTenure Comp, Pop, PedCount, Res, Hours24, Visibility}.

regr<-lm(Profit~MTenure+CTenure+Comp+Pop+PedCount+Res+Hours24+Visibility, data=store.df)
summary(regr)
## 
## Call:
## lm(formula = Profit ~ MTenure + CTenure + Comp + Pop + PedCount + 
##     Res + Hours24 + Visibility, data = store.df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -105789  -35946   -7069   33780  112390 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   7610.041  66821.994   0.114 0.909674    
## MTenure        760.993    127.086   5.988 9.72e-08 ***
## CTenure        944.978    421.687   2.241 0.028400 *  
## Comp        -25286.887   5491.937  -4.604 1.94e-05 ***
## Pop              3.667      1.466   2.501 0.014890 *  
## PedCount     34087.359   9073.196   3.757 0.000366 ***
## Res          91584.675  39231.283   2.334 0.022623 *  
## Hours24      63233.307  19641.114   3.219 0.001994 ** 
## Visibility   12625.447   9087.620   1.389 0.169411    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 56970 on 66 degrees of freedom
## Multiple R-squared:  0.6379, Adjusted R-squared:  0.594 
## F-statistic: 14.53 on 8 and 66 DF,  p-value: 5.382e-12
store.df$Profit
##  [1] 265014 424007 222735 210122 300480 469050 476355 361115 474725 278625
## [11] 389886 329020 152513 261571 203951 196277 265584 394039 261495 269235
## [21] 282584 367036 277414 267354 282124 211912 230194 273036 263956 333607
## [31] 211885 149033 292745 382199 322624 219292 187765 203184 221130 222913
## [41] 147327 264072 337233 439781 410149 315780 387853 284169 195276 251013
## [51] 237344 169201 365018 159792 147672 189235 122180 227601 303069 356071
## [61] 177046 202641 239036 221157 301641 146058 362067 236339 375393 254203
## [71] 198529 196772 279193 518998 296826
fitted(regr)
##        1        2        3        4        5        6        7        8 
## 282884.6 311616.6 247387.2 188867.1 308773.0 379779.2 392304.9 371985.2 
##        9       10       11       12       13       14       15       16 
## 443237.0 300474.6 390414.7 420779.0 210319.6 268639.8 279296.3 202381.0 
##       17       18       19       20       21       22       23       24 
## 352534.2 455293.3 256081.6 275088.3 277490.0 271166.4 309003.2 214340.6 
##       25       26       27       28       29       30       31       32 
## 246051.2 219299.0 258929.7 280699.0 210844.3 260034.8 197082.6 191247.4 
##       33       34       35       36       37       38       39       40 
## 207234.6 370486.2 318628.6 232328.1 240430.8 199026.7 260630.9 173787.2 
##       41       42       43       44       45       46       47       48 
## 237766.0 277755.6 375932.0 475485.8 350220.8 279391.3 399517.8 208750.4 
##       49       50       51       52       53       54       55       56 
## 215972.9 307812.7 282907.8 212113.7 252711.1 195979.6 214674.3 167063.9 
##       57       58       59       60       61       62       63       64 
## 227968.7 218550.3 265067.8 331875.7 192084.1 218925.7 238526.9 318618.1 
##       65       66       67       68       69       70       71       72 
## 293397.2 218979.5 261546.3 240964.4 280082.4 282110.4 205893.0 262434.7 
##       73       74       75 
## 269862.0 412871.4 252828.2

TASK 2n

Based on TASK 2m, answer the following questions:

List the explanatory variable(s) whose beta-coefficients are statistically significant (p < 0.05).

MTenure, CTenure, Comp, Pop, PedCount, Res, Hours24

List the explanatory variable(s) whose beta-coefficients are not statistically significant (p > 0.05).

Visibility


TASK 2m

Based on TASK 2m, answer the following questions:

What is expected change in the Profit at a store, if the Manager’s tenure i.e. number of months of experience with Store24, increases by one month?

Increase in Manager’s tenure of work experience by 1 month is expected to increase the Store’s profit by 761.

What is expected change in the Profit at a store, if the Crew’s tenure i.e. number of months of experience with Store24, increases by one month?

Increase in Crew’s tenure of work experience by 1 month is expected to increase the Store’s profit by 945.


TASK 2n

Please prepare an “Executive Summary”. Please add this to the end of your Rmd file. Specifically, please create a qualitative summary of Managerial Insights, based on your data analysis, especially your Regression Analysis. You may write this in paragraph form or in point form.

We observe that:

  1. Residential Area (Res=1), Number of competitors per 10,000 people within a ½ mile radius (Comp) and Hours24 are the major obstacles in the way of employee retention. While Managers seem to be leaving stores which run 24 hours, are in residential areas, they are also bit affected by the population of the area. As far as crew is concerned, they dont seem to be liking to work in residential areas too but they are neutral to the population around. Crew are negatively affected by competitors around and by pedestrian foot traffic volume.

  2. Once again, managers skill seems to be getting affected by Res, Hours24 negatively and we also see a strange thing that crewskill and mgrskill are negatively correlated. That simply suggests that crew or manager are not able to utlize their skills to full potential which may lead to employee dissatisfaction towards office work and thus he may end up leaving the job. At the same time, we see that crewskill is also getting negatively affected by other variables which are Res, visibility and Comp. As Visibility is negatively affecting crewSkill and PedCount is negatively affecting CrewTenure, we can say that the crews feel overburdened with work or are unwilling to work due to lack of motivation or required skill.

  3. We also see that retention of managers and crews will lead to increase in sales, profit, service Quality and their skills (as it may keep getting added with their experience). The organisation must make efforts to retain the employees.

  4. Profit also has a significantly strong relationship with population around the store, pedestrian traffic rate, crew skill, mgr skill and service quality. It also has a negative correlation with competition and resedential area. The negative correlation between profit, residential area and Hours24 which indicates that stores located in industrial areas/operating in shifts/running only during daytime may be making higher profits.

All this simply suggests that the stores located in industrial areas generally have a high employee retention and skill rate. Hence, any employee retention programme must primarily be focused in stores located in resedential areas.

Also stores which run 24 hours a day must focus on retention of managers and thereby working to increase their profits. Since 24 hour stores are neither retaining managers nor reaping significant profits, opening them only during official hours will prove to be more efficient.