R Markdown for attitude dataset

This is a R Markdown document to analyze pre-loaded dataset in R named attitude. The dataset attitude is from a survey of the clerical employees of a large financial organization, the data are aggregated from the questionnaires of the approximately 35 employees for each of 30 (randomly selected) departments. The numbers give the percent proportion of favorable responses to seven questions in each department.

# view the dataset
attitude
##    rating complaints privileges learning raises critical advance
## 1      43         51         30       39     61       92      45
## 2      63         64         51       54     63       73      47
## 3      71         70         68       69     76       86      48
## 4      61         63         45       47     54       84      35
## 5      81         78         56       66     71       83      47
## 6      43         55         49       44     54       49      34
## 7      58         67         42       56     66       68      35
## 8      71         75         50       55     70       66      41
## 9      72         82         72       67     71       83      31
## 10     67         61         45       47     62       80      41
## 11     64         53         53       58     58       67      34
## 12     67         60         47       39     59       74      41
## 13     69         62         57       42     55       63      25
## 14     68         83         83       45     59       77      35
## 15     77         77         54       72     79       77      46
## 16     81         90         50       72     60       54      36
## 17     74         85         64       69     79       79      63
## 18     65         60         65       75     55       80      60
## 19     65         70         46       57     75       85      46
## 20     50         58         68       54     64       78      52
## 21     50         40         33       34     43       64      33
## 22     64         61         52       62     66       80      41
## 23     53         66         52       50     63       80      37
## 24     40         37         42       58     50       57      49
## 25     63         54         42       48     66       75      33
## 26     66         77         66       63     88       76      72
## 27     78         75         58       74     80       78      49
## 28     48         57         44       45     51       83      38
## 29     85         85         71       71     77       74      55
## 30     82         82         39       59     64       78      39
dim(attitude)
## [1] 30  7
names(attitude)
## [1] "rating"     "complaints" "privileges" "learning"   "raises"    
## [6] "critical"   "advance"

Measures of central tendency

# compute mean
mean(attitude$rating, na.rm = TRUE)
## [1] 64.63333
mean(attitude$complaints, na.rm = TRUE)
## [1] 66.6
mean(attitude$privileges, na.rm = TRUE)
## [1] 53.13333
mean(attitude$learning, na.rm = TRUE)
## [1] 56.36667
mean(attitude$raises, na.rm = TRUE)
## [1] 64.63333
mean(attitude$critical, na.rm = TRUE)
## [1] 74.76667
mean(attitude$advance, na.rm = TRUE)
## [1] 42.93333
# compute median
median(attitude$rating, na.rm = TRUE)
## [1] 65.5
median(attitude$complaints, na.rm = TRUE)
## [1] 65
median(attitude$privileges, na.rm = TRUE)
## [1] 51.5
median(attitude$learning, na.rm = TRUE)
## [1] 56.5
median(attitude$raises, na.rm = TRUE)
## [1] 63.5
median(attitude$critical, na.rm = TRUE)
## [1] 77.5
median(attitude$advance, na.rm = TRUE)
## [1] 41
# compute mode
modeforrating = table(as.vector(attitude$rating))
names(modeforrating)[modeforrating==max(modeforrating)]
## [1] "43" "50" "63" "64" "65" "67" "71" "81"
modeforcomplaints = table(as.vector(attitude$complaints))
names(modeforcomplaints)[modeforcomplaints==max(modeforcomplaints)]
## [1] "60" "61" "70" "75" "77" "82" "85"
modeforprivileges = table(as.vector(attitude$privileges))
names(modeforprivileges)[modeforprivileges==max(modeforprivileges)]
## [1] "42"
modeforlearning = table(as.vector(attitude$learning))
names(modeforlearning)[modeforlearning==max(modeforlearning)]
## [1] "39" "45" "47" "54" "58" "69" "72"
modeforraises = table(as.vector(attitude$raises))
names(modeforraises)[modeforraises==max(modeforraises)]
## [1] "66"
modeforcritical = table(as.vector(attitude$critical))
names(modeforcritical)[modeforcritical==max(modeforcritical)]
## [1] "80"
modeforadvance = table(as.vector(attitude$advance))
names(modeforadvance)[modeforadvance==max(modeforadvance)]
## [1] "41"
# compute max
max(attitude$rating, na.rm = TRUE)
## [1] 85
max(attitude$complaints, na.rm = TRUE)
## [1] 90
max(attitude$privileges, na.rm = TRUE)
## [1] 83
max(attitude$learning, na.rm = TRUE)
## [1] 75
max(attitude$raises, na.rm = TRUE)
## [1] 88
max(attitude$critical, na.rm = TRUE)
## [1] 92
max(attitude$advance, na.rm = TRUE)
## [1] 72
# compute min
min(attitude$rating, na.rm = TRUE)
## [1] 40
min(attitude$complaints, na.rm = TRUE)
## [1] 37
min(attitude$privileges, na.rm = TRUE)
## [1] 30
min(attitude$learning, na.rm = TRUE)
## [1] 34
min(attitude$raises, na.rm = TRUE)
## [1] 43
min(attitude$critical, na.rm = TRUE)
## [1] 49
min(attitude$advance, na.rm = TRUE)
## [1] 25
# compute range
range(attitude$rating, na.rm = TRUE)
## [1] 40 85
range(attitude$complaints, na.rm = TRUE)
## [1] 37 90
range(attitude$privileges, na.rm = TRUE)
## [1] 30 83
range(attitude$learning, na.rm = TRUE)
## [1] 34 75
range(attitude$raises, na.rm = TRUE)
## [1] 43 88
range(attitude$critical, na.rm = TRUE)
## [1] 49 92
range(attitude$advance, na.rm = TRUE)
## [1] 25 72
# compute quantile
quantile(attitude$rating, na.rm = TRUE)
##    0%   25%   50%   75%  100% 
## 40.00 58.75 65.50 71.75 85.00
quantile(attitude$complaints, na.rm = TRUE)
##   0%  25%  50%  75% 100% 
## 37.0 58.5 65.0 77.0 90.0
quantile(attitude$privileges, na.rm = TRUE)
##   0%  25%  50%  75% 100% 
## 30.0 45.0 51.5 62.5 83.0
quantile(attitude$learning, na.rm = TRUE)
##    0%   25%   50%   75%  100% 
## 34.00 47.00 56.50 66.75 75.00
quantile(attitude$raises, na.rm = TRUE)
##    0%   25%   50%   75%  100% 
## 43.00 58.25 63.50 71.00 88.00
quantile(attitude$critical, na.rm = TRUE)
##    0%   25%   50%   75%  100% 
## 49.00 69.25 77.50 80.00 92.00
quantile(attitude$advance, na.rm = TRUE)
##    0%   25%   50%   75%  100% 
## 25.00 35.00 41.00 47.75 72.00
# compute IQR
IQR(attitude$rating, na.rm = TRUE)
## [1] 13
IQR(attitude$complaints, na.rm = TRUE)
## [1] 18.5
IQR(attitude$privileges, na.rm = TRUE)
## [1] 17.5
IQR(attitude$learning, na.rm = TRUE)
## [1] 19.75
IQR(attitude$raises, na.rm = TRUE)
## [1] 12.75
IQR(attitude$critical, na.rm = TRUE)
## [1] 10.75
IQR(attitude$advance, na.rm = TRUE)
## [1] 12.75

Measures of variability

# compute variance
var(attitude$rating, na.rm = TRUE)
## [1] 148.1713
var(attitude$complaints, na.rm = TRUE)
## [1] 177.2828
var(attitude$privileges, na.rm = TRUE)
## [1] 149.7057
var(attitude$learning, na.rm = TRUE)
## [1] 137.7575
var(attitude$raises, na.rm = TRUE)
## [1] 108.1023
var(attitude$critical, na.rm = TRUE)
## [1] 97.9092
var(attitude$advance, na.rm = TRUE)
## [1] 105.8575
# compute standard deviation
sd(attitude$rating, na.rm = TRUE)
## [1] 12.17256
sd(attitude$complaints, na.rm = TRUE)
## [1] 13.31476
sd(attitude$privileges, na.rm = TRUE)
## [1] 12.23543
sd(attitude$learning, na.rm = TRUE)
## [1] 11.73701
sd(attitude$raises, na.rm = TRUE)
## [1] 10.39723
sd(attitude$critical, na.rm = TRUE)
## [1] 9.894908
sd(attitude$advance, na.rm = TRUE)
## [1] 10.28871

Measures of relationship

# compute correlation
cor(attitude)
##               rating complaints privileges  learning    raises  critical
## rating     1.0000000  0.8254176  0.4261169 0.6236782 0.5901390 0.1564392
## complaints 0.8254176  1.0000000  0.5582882 0.5967358 0.6691975 0.1877143
## privileges 0.4261169  0.5582882  1.0000000 0.4933310 0.4454779 0.1472331
## learning   0.6236782  0.5967358  0.4933310 1.0000000 0.6403144 0.1159652
## raises     0.5901390  0.6691975  0.4454779 0.6403144 1.0000000 0.3768830
## critical   0.1564392  0.1877143  0.1472331 0.1159652 0.3768830 1.0000000
## advance    0.1550863  0.2245796  0.3432934 0.5316198 0.5741862 0.2833432
##              advance
## rating     0.1550863
## complaints 0.2245796
## privileges 0.3432934
## learning   0.5316198
## raises     0.5741862
## critical   0.2833432
## advance    1.0000000

Summary

library(psych)
summary(attitude)
##      rating        complaints     privileges       learning         raises     
##  Min.   :40.00   Min.   :37.0   Min.   :30.00   Min.   :34.00   Min.   :43.00  
##  1st Qu.:58.75   1st Qu.:58.5   1st Qu.:45.00   1st Qu.:47.00   1st Qu.:58.25  
##  Median :65.50   Median :65.0   Median :51.50   Median :56.50   Median :63.50  
##  Mean   :64.63   Mean   :66.6   Mean   :53.13   Mean   :56.37   Mean   :64.63  
##  3rd Qu.:71.75   3rd Qu.:77.0   3rd Qu.:62.50   3rd Qu.:66.75   3rd Qu.:71.00  
##  Max.   :85.00   Max.   :90.0   Max.   :83.00   Max.   :75.00   Max.   :88.00  
##     critical        advance     
##  Min.   :49.00   Min.   :25.00  
##  1st Qu.:69.25   1st Qu.:35.00  
##  Median :77.50   Median :41.00  
##  Mean   :74.77   Mean   :42.93  
##  3rd Qu.:80.00   3rd Qu.:47.75  
##  Max.   :92.00   Max.   :72.00
describe(attitude)
##            vars  n  mean    sd median trimmed   mad min max range  skew
## rating        1 30 64.63 12.17   65.5   65.21 10.38  40  85    45 -0.36
## complaints    2 30 66.60 13.31   65.0   67.08 14.83  37  90    53 -0.22
## privileges    3 30 53.13 12.24   51.5   52.75 10.38  30  83    53  0.38
## learning      4 30 56.37 11.74   56.5   56.58 14.83  34  75    41 -0.05
## raises        5 30 64.63 10.40   63.5   64.50 11.12  43  88    45  0.20
## critical      6 30 74.77  9.89   77.5   75.83  7.41  49  92    43 -0.87
## advance       7 30 42.93 10.29   41.0   41.83  8.90  25  72    47  0.85
##            kurtosis   se
## rating        -0.77 2.22
## complaints    -0.68 2.43
## privileges    -0.41 2.23
## learning      -1.22 2.14
## raises        -0.60 1.90
## critical       0.17 1.81
## advance        0.47 1.88