.....### STORE24(A):MANAGING EMPLOYEE RETENTION###.....
  ....##Under the guidance of Prof.Sameer Mathur(Ph.D,Carnige Mellon                                                          University),IIM-LUCKNOW##....
#To read the data from .csv file#
storedata.df <- read.csv(paste("store24.csv") )
View(storedata.df)
#To summarize all the given data by command function summary#
summary(storedata.df)
##      store          Sales             Profit          MTenure      
##  Min.   : 1.0   Min.   : 699306   Min.   :122180   Min.   :  0.00  
##  1st Qu.:19.5   1st Qu.: 984579   1st Qu.:211004   1st Qu.:  6.67  
##  Median :38.0   Median :1127332   Median :265014   Median : 24.12  
##  Mean   :38.0   Mean   :1205413   Mean   :276314   Mean   : 45.30  
##  3rd Qu.:56.5   3rd Qu.:1362388   3rd Qu.:331314   3rd Qu.: 50.92  
##  Max.   :75.0   Max.   :2113089   Max.   :518998   Max.   :277.99  
##     CTenure              Pop             Comp          Visibility  
##  Min.   :  0.8871   Min.   : 1046   Min.   : 1.651   Min.   :2.00  
##  1st Qu.:  4.3943   1st Qu.: 5616   1st Qu.: 3.151   1st Qu.:3.00  
##  Median :  7.2115   Median : 8896   Median : 3.629   Median :3.00  
##  Mean   : 13.9315   Mean   : 9826   Mean   : 3.788   Mean   :3.08  
##  3rd Qu.: 17.2156   3rd Qu.:14104   3rd Qu.: 4.230   3rd Qu.:4.00  
##  Max.   :114.1519   Max.   :26519   Max.   :11.128   Max.   :5.00  
##     PedCount         Res          Hours24       CrewSkill    
##  Min.   :1.00   Min.   :0.00   Min.   :0.00   Min.   :2.060  
##  1st Qu.:2.00   1st Qu.:1.00   1st Qu.:1.00   1st Qu.:3.225  
##  Median :3.00   Median :1.00   Median :1.00   Median :3.500  
##  Mean   :2.96   Mean   :0.96   Mean   :0.84   Mean   :3.457  
##  3rd Qu.:4.00   3rd Qu.:1.00   3rd Qu.:1.00   3rd Qu.:3.655  
##  Max.   :5.00   Max.   :1.00   Max.   :1.00   Max.   :4.640  
##     MgrSkill        ServQual     
##  Min.   :2.957   Min.   : 57.90  
##  1st Qu.:3.344   1st Qu.: 78.95  
##  Median :3.589   Median : 89.47  
##  Mean   :3.638   Mean   : 87.15  
##  3rd Qu.:3.925   3rd Qu.: 99.90  
##  Max.   :4.622   Max.   :100.00
#To describe the data by command function describe#
library(psych)
describe(storedata.df)
##            vars  n       mean        sd     median    trimmed       mad
## store         1 75      38.00     21.79      38.00      38.00     28.17
## Sales         2 75 1205413.12 304531.31 1127332.00 1182031.25 288422.04
## Profit        3 75  276313.61  89404.08  265014.00  270260.34  90532.00
## MTenure       4 75      45.30     57.67      24.12      33.58     29.67
## CTenure       5 75      13.93     17.70       7.21      10.60      6.14
## Pop           6 75    9825.59   5911.67    8896.00    9366.07   7266.22
## Comp          7 75       3.79      1.31       3.63       3.66      0.82
## Visibility    8 75       3.08      0.75       3.00       3.07      0.00
## PedCount      9 75       2.96      0.99       3.00       2.97      1.48
## Res          10 75       0.96      0.20       1.00       1.00      0.00
## Hours24      11 75       0.84      0.37       1.00       0.92      0.00
## CrewSkill    12 75       3.46      0.41       3.50       3.47      0.34
## MgrSkill     13 75       3.64      0.41       3.59       3.62      0.45
## ServQual     14 75      87.15     12.61      89.47      88.62     15.61
##                  min        max      range  skew kurtosis       se
## store           1.00      75.00      74.00  0.00    -1.25     2.52
## Sales      699306.00 2113089.00 1413783.00  0.71    -0.09 35164.25
## Profit     122180.00  518998.00  396818.00  0.62    -0.21 10323.49
## MTenure         0.00     277.99     277.99  2.01     3.90     6.66
## CTenure         0.89     114.15     113.26  3.52    15.00     2.04
## Pop          1046.00   26519.00   25473.00  0.62    -0.23   682.62
## Comp            1.65      11.13       9.48  2.48    11.31     0.15
## Visibility      2.00       5.00       3.00  0.25    -0.38     0.09
## PedCount        1.00       5.00       4.00  0.00    -0.52     0.11
## Res             0.00       1.00       1.00 -4.60    19.43     0.02
## Hours24         0.00       1.00       1.00 -1.82     1.32     0.04
## CrewSkill       2.06       4.64       2.58 -0.43     1.64     0.05
## MgrSkill        2.96       4.62       1.67  0.27    -0.53     0.05
## ServQual       57.90     100.00      42.10 -0.66    -0.72     1.46

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

#To measure the mean of Profit.#
mean(storedata.df$Profit)
## [1] 276313.6
#To measure standard deviation of Profit.#
sd(storedata.df$Profit)
## [1] 89404.08
#To measure the mean of MTenure.#
mean(storedata.df$MTenure)
## [1] 45.29644
#To measure the standard deviation of MTenure.#
sd(storedata.df$MTenure)
## [1] 57.67155
#To measure the mean and standard deviation of CTenure.#
mean(storedata.df$CTenure)
## [1] 13.9315
#To measure the mean and standard deviation of CTenure.#
sd(storedata.df$CTenure)
## [1] 17.69752
#To sort a dataframe based on a data column.#
attach(storedata.df)
View(storedata.df)
data <- storedata.df[order(Profit),] # sort by profit (ascending)#
View(data)
data[1:10,] # see the first 10 rows #
##    store   Sales Profit     MTenure   CTenure   Pop     Comp Visibility
## 57    57  699306 122180  24.3485700  2.956879  3642 2.973376          3
## 66    66  879581 146058 115.2039000  3.876797  1046 6.569790          2
## 41    41  744211 147327  14.9180200 11.926080  9701 4.364600          2
## 55    55  925744 147672   6.6703910 18.365500 10532 6.389294          4
## 32    32  828918 149033  36.0792600  6.636550  9697 4.641468          3
## 13    13  857843 152513   0.6571813  1.577002 14186 4.435671          3
## 54    54  811190 159792   6.6703910  3.876797  3747 3.756011          3
## 52    52 1073008 169201  24.1185600  3.416838 14859 6.585143          3
## 61    61  716589 177046  21.8184200 13.305950  3014 3.263994          3
## 37    37 1202917 187765  23.1985000  1.347023  8870 4.491863          3
##    PedCount Res Hours24 CrewSkill MgrSkill ServQual
## 57        2   1       1      3.35 2.956667 84.21266
## 66        3   1       1      4.03 3.673333 80.26675
## 41        3   1       1      3.03 3.672222 81.13993
## 55        3   1       1      3.49 3.477778 76.31346
## 32        3   1       0      3.28 3.550000 73.68654
## 13        2   1       1      4.10 3.000000 76.30609
## 54        2   1       1      3.08 3.933333 65.78734
## 52        3   1       1      3.83 3.833333 94.73510
## 61        1   1       1      3.07 3.126667 73.68654
## 37        3   1       1      3.38 4.016667 73.68654
data <- storedata.df[order(-Profit),] # sort by profit (descending)#
View(data)
data[1:10] # see the last 10 rows #
##    store   Sales Profit     MTenure     CTenure   Pop      Comp Visibility
## 74    74 1782957 518998 171.0972000  29.5195100 10913  2.319850          3
## 7      7 1809256 476355  62.5308000   7.3264880 17754  3.377900          2
## 9      9 2113089 474725 108.9935000   6.0616020 26519  2.637630          2
## 6      6 1703140 469050 149.9359000  11.3511300 16926  3.184613          3
## 44    44 1807740 439781 182.2364000 114.1519000 20624  3.628561          3
## 2      2 1619874 424007  86.2221900   6.6365500  8630  4.235555          4
## 45    45 1602362 410149  47.6456500   9.1663250 17808  3.472609          5
## 18    18 1704826 394039 239.9698000  33.7741300  3807  3.994713          5
## 11    11 1583446 389886  44.8197700   2.0369610 21550  3.272398          2
## 47    47 1665657 387853  12.8479000   6.6365500 23623  2.422707          2
## 34    34 1557084 382199  29.1788500  19.7453800 10923  2.361195          4
## 69    69 1574290 375393  44.1297300  26.7597500  5050  3.949484          3
## 22    22 1433440 367036  18.3682200  25.9548300  8280  4.464360          4
## 53    53 1355684 365018  57.2404900   8.2464070  6909  3.156869          2
## 67    67 1228052 362067   5.2574510   3.4168380 11552  3.583143          3
## 8      8 1378482 361115   0.0000000  56.7720800 20824  2.895114          4
## 60    60 1433624 356071  33.5162500   6.4065710  8845  2.719548          3
## 43    43 1296711 337233 177.5704000   5.4866530  3495  3.653641          4
## 30    30 1874873 333607  73.3414400  23.4250500  1116  3.578323          3
## 12    12 1444714 329020 277.9877000   6.6365500 11160  4.903895          4
## 35    35 1443230 322624  36.9993100  14.8008200 14361  3.613021          4
## 46    46 1339214 315780   6.1775050   5.2566730  9285  3.144458          4
## 59    59 1334898 303069  13.3079200  13.7659100  6231  3.301353          3
## 65    65 1349972 301641 150.2317000  23.4250500  1075  3.218960          3
## 5      5 1227841 300480   3.8773700   6.8665300 20335  1.651364          2
## 75    75 1321870 296826   2.2672760   8.7063660  8966  1.886111          4
## 33    33 1369092 292745  51.7201700   3.8767970  8177  5.309016          3
## 48    48 1243167 284169  31.4789900   8.2464070  8491  4.848749          3
## 21    21 1237518 282584  24.1185600   7.2114990 14022  4.020201          3
## 25    25 1282886 282124   0.0000000  10.3162200  6183  3.517020          3
## 73    73 1115450 279193  41.1395500   6.4065710  6276  4.180132          4
## 10    10 1080979 278625  31.4789900  23.1950700 16381  2.270771          4
## 23    23 1351972 277414  12.3878700   3.4168380 13797  3.594539          3
## 28    28 1141465 273036  23.8885400  16.9856300 14673  3.193422          3
## 20    20 1320950 269235  65.0609500   5.9466120 15377  4.148495          3
## 24    24 1071307 267354  44.8197700   3.4168380  9069  3.280590          2
## 17    17 1095695 265584  31.7090000   3.6468170 14477  2.561704          3
## 1      1 1060294 265014   0.0000000  24.8049300  7535  2.797888          3
## 42    42 1273855 264072   2.4972890  86.0944600  2106  3.231049          3
## 29    29  924782 263956  19.5182900  23.5400400 11350  5.392077          3
## 14    14 1171491 261571  87.3722600   2.9568790  6898  4.233057          4
## 19    19 1127332 261495   3.4173430  16.9856300  4669  2.753616          2
## 70    70 1207204 254203  14.9180200   3.8767970 19809  3.122484          3
## 50    50  935257 251013  12.8479000  16.0657100 14653  1.751638          3
## 63    63 1045264 239036   8.2476260   6.8665300  7581  4.136580          3
## 51    51 1027035 237344   3.4173430   7.0965090  3126  2.447474          2
## 68    68 1018195 236339  17.4481600   2.2669400  9018  3.504810          4
## 27    27  985862 230194  50.1100800  17.4455900  8153  3.719806          3
## 58    58  989760 227601   4.5674100   4.1067760  8477  3.993874          4
## 40    40 1042664 222913 122.7943000  16.7556500  2521 11.127880          3
## 3      3 1099921 222735  23.8885400   5.0266940  9695  4.494666          3
## 64    64  969509 221157   0.0000000   0.8870637 17110  2.378613          4
## 39    39  979361 221130  34.6991800   5.4866530  8896  5.046338          2
## 36    36 1016950 219292  41.5995800  20.8952800  3218  3.929021          3
## 26    26  898548 211912   0.6571813  20.4353200  9999  4.178195          3
## 31    31  993597 211885   0.0000000  10.7761800  2578  3.100689          2
## 4      4 1053860 210122   0.0000000   5.3716630  2797  4.253946          4
## 15    15 1005627 203951   0.0000000   8.4763860  8684  3.844220          3
## 38    38  991524 203184  15.6080600   1.5770020  6557  4.225993          3
## 62    62  942915 202641  12.1578600   6.8665300  9820  4.201450          3
## 71    71  977566 198529  43.8997200  38.3737200  3265  3.856324          2
## 72    72  848140 196772 126.4745000  27.4496900  3151  3.680586          2
## 16    16  883864 196277  23.6585300   4.6817250  6872  3.344703          3
## 49    49  983296 195276  55.4003900  14.6858300  1863  3.713871          4
## 56    56  916197 189235   4.7974240   2.7268990 13740  4.597269          2
## 37    37 1202917 187765  23.1985000   1.3470230  8870  4.491863          3
## 61    61  716589 177046  21.8184200  13.3059500  3014  3.263994          3
## 52    52 1073008 169201  24.1185600   3.4168380 14859  6.585143          3
## 54    54  811190 159792   6.6703910   3.8767970  3747  3.756011          3
## 13    13  857843 152513   0.6571813   1.5770020 14186  4.435671          3
## 32    32  828918 149033  36.0792600   6.6365500  9697  4.641468          3
## 55    55  925744 147672   6.6703910  18.3655000 10532  6.389294          4
## 41    41  744211 147327  14.9180200  11.9260800  9701  4.364600          2
## 66    66  879581 146058 115.2039000   3.8767970  1046  6.569790          2
## 57    57  699306 122180  24.3485700   2.9568790  3642  2.973376          3
##    PedCount Res
## 74        4   1
## 7         5   1
## 9         4   1
## 6         4   1
## 44        4   0
## 2         3   1
## 45        3   1
## 18        3   1
## 11        5   1
## 47        5   1
## 34        4   1
## 69        3   1
## 22        3   1
## 53        2   1
## 67        3   1
## 8         3   1
## 60        4   1
## 43        3   1
## 30        2   1
## 12        4   1
## 35        3   1
## 46        3   1
## 59        3   1
## 65        1   1
## 5         5   0
## 75        4   0
## 33        2   1
## 48        2   1
## 21        3   1
## 25        3   1
## 73        3   1
## 10        3   1
## 23        4   1
## 28        4   1
## 20        2   1
## 24        3   1
## 17        4   1
## 1         3   1
## 42        2   1
## 29        2   1
## 14        2   1
## 19        3   1
## 70        4   1
## 50        4   1
## 63        3   1
## 51        4   1
## 68        2   1
## 27        2   1
## 58        2   1
## 40        4   1
## 3         3   1
## 64        3   1
## 39        4   1
## 36        2   1
## 26        2   1
## 31        2   1
## 4         2   1
## 15        4   1
## 38        2   1
## 62        4   1
## 71        1   1
## 72        1   1
## 16        3   1
## 49        1   1
## 56        3   1
## 37        3   1
## 61        1   1
## 52        3   1
## 54        2   1
## 13        2   1
## 32        3   1
## 55        3   1
## 41        3   1
## 66        3   1
## 57        2   1
#To print the {StoreID, Sales, Profit, MTenure, CTenure} of the top 10 most profitable stores.#
mpdata <- storedata.df[order(Profit),]
View(mpdata)
mpdata[1:10, 1:5]
##    store   Sales Profit     MTenure   CTenure
## 57    57  699306 122180  24.3485700  2.956879
## 66    66  879581 146058 115.2039000  3.876797
## 41    41  744211 147327  14.9180200 11.926080
## 55    55  925744 147672   6.6703910 18.365500
## 32    32  828918 149033  36.0792600  6.636550
## 13    13  857843 152513   0.6571813  1.577002
## 54    54  811190 159792   6.6703910  3.876797
## 52    52 1073008 169201  24.1185600  3.416838
## 61    61  716589 177046  21.8184200 13.305950
## 37    37 1202917 187765  23.1985000  1.347023
#To print the {StoreID, Sales, Profit, MTenure, CTenure} of the bottom 10 least profitable stores.#
lpdata <- storedata.df[order(-Profit),]
View(lpdata)
lpdata[1:10,1:5]
##    store   Sales Profit   MTenure    CTenure
## 74    74 1782957 518998 171.09720  29.519510
## 7      7 1809256 476355  62.53080   7.326488
## 9      9 2113089 474725 108.99350   6.061602
## 6      6 1703140 469050 149.93590  11.351130
## 44    44 1807740 439781 182.23640 114.151900
## 2      2 1619874 424007  86.22219   6.636550
## 45    45 1602362 410149  47.64565   9.166325
## 18    18 1704826 394039 239.96980  33.774130
## 11    11 1583446 389886  44.81977   2.036961
## 47    47 1665657 387853  12.84790   6.636550
library(car)
## 
## Attaching package: 'car'
## The following object is masked from 'package:psych':
## 
##     logit
#To draw a scatter plot : profit Vs MTenure #
scatterplot(Profit ~ MTenure, data=storedata.df,
            xlab="MTenure", ylab="Profit", 
            main="Scatterplot of Profit Vs MTenure")

# To Draw a scatter plot of Profit vs. CTenure#
scatterplot(Profit 
            ~ CTenure, data =storedata.df,
            xlab="CTenure",ylab="Profit",
            main="Scatterplot of  Profit Vs CTenure")

# To Construct a Correlation Matrix for all the variables in the dataset. (Displaying the numbers up to 2 Decimal places)#
round(cor(storedata.df),2)
##            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
#To find Correlation between Profit and Mtenure#
round(cor(storedata.df),2)[3,4]
## [1] 0.44
#To find correlation between profit and CTenure#
round(cor(storedata.df),2)[3,5]
## [1] 0.26
#tO Construct the Corrgram FOR THE STORE24 #
library(corrgram)
cols <- colorRampPalette(c("gold", "blue",
                           "red", "darkgreen"))
corrgram(storedata.df,order=TRUE, col.regions=cols,
         lower.panel = panel.shade,
         upper.panel = panel.pie, text.panel = panel.txt, 
         main="Corrgram of store24 :MANAGING EMPLOYEE RETENTION")

#To run a Pearson's Correlation test on the correlation between Profit and MTenure. #
cor.test(storedata.df$Profit, storedata.df$MTenure, 
         method = "pearson")
## 
##  Pearson's product-moment correlation
## 
## data:  storedata.df$Profit and storedata.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
#To find the p-value.#
cor.test(storedata.df$Profit,storedata.df$MTenure)$p.value
## [1] 8.193133e-05
# By using Pearson's Correlation test finding the  correlation between Profit and CTenure.# 
cor.test(storedata.df$Profit, storedata.df$CTenure, method="pearson") 
## 
##  Pearson's product-moment correlation
## 
## data:  storedata.df$Profit and storedata.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
#To find the p-value.#
cor.test(storedata.df$Profit,storedata.df$CTenure)$p.value
## [1] 0.0256203
#Regression Analysis of Profit on {MTenure, CTenure, Comp, Pop, PedCount, Res, Hours24, Visibility}#
rmodel <- lm(Profit~MTenure+CTenure+Comp+Pop+PedCount+Res+Hours24+Visibility, data=storedata.df)
summary(rmodel)
## 
## Call:
## lm(formula = Profit ~ MTenure + CTenure + Comp + Pop + PedCount + 
##     Res + Hours24 + Visibility, data = storedata.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
 #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

#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?

From the above analysis, we can decipher that if the Manager’s tenure is increased by a month, the profit changes by $760.99.

#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?

From the above analysis, we can decipher that if the Crew’s tenure is increased by a month, the profit changes by $944.98.