Data Descriptives

Summary of BMI

BMISummary<-favstats(ReviewComplete_New$BMIC)
kable(BMISummary) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
min Q1 median Q3 max mean sd n missing
16.31228 20.8445 22.03302 24.26559 30.17699 22.57504 2.891191 70 0

Visualising and tabulating Data

Concussions Freq
0 39
1 15
2 16

Subject Distribution by Concussions and UE injuries categorized into 0, 1 and 2+

No Conc 1 Conc 2+Conc
0 25 8 6
1 8 1 1
2+ 6 6 9

Subject Distribution by Concussions and LE injuries

##     
##       0  1  2
##   0  11  6  2
##   1   4  0  0
##   2+ 24  9 14
No Conc 1 Conc 2+Conc
0 11 6 2
1 4 0 0
2+ 24 9 14

Subject Distribution by Concussions and Spinal

No Conc 1 Conc 2+Conc
0 19 8 6
1 5 0 1
2+ 15 7 9

Initial Exploratory Data Analysis Chisquare and Fisher’s Exact Tests

## 
##  Pearson's Chi-squared test
## 
## data:  counts
## X-squared = 10.804, df = 4, p-value = 0.02886
## 
##  Fisher's Exact Test for Count Data
## 
## data:  counts
## p-value = 0.02973
## alternative hypothesis: two.sided
## 
##  Pearson's Chi-squared test
## 
## data:  countsLE
## X-squared = 6.6571, df = 4, p-value = 0.1552
## 
##  Fisher's Exact Test for Count Data
## 
## data:  countsLE
## p-value = 0.2058
## alternative hypothesis: two.sided
## 
##  Pearson's Chi-squared test
## 
## data:  countsSpinal
## X-squared = 3.5009, df = 4, p-value = 0.4777
## 
##  Fisher's Exact Test for Count Data
## 
## data:  countsSpinal
## p-value = 0.5688
## alternative hypothesis: two.sided

Fit ordered logit model

Table of Parameter Estimates

kable(Estimates) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
Value Std. Error t value p value
BMIC 0.132 0.091 1.455 0.146
Spinal -0.019 0.079 -0.240 0.810
LE 0.017 0.029 0.571 0.568
UE 0.223 0.119 1.870 0.061
0|1 3.624 2.061 1.758 0.079
1|2 4.753 2.097 2.267 0.023

Odds Ratio for a unit change

kable(TB.Review) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
OR 2.5 % 97.5 %
BMIC 1.141 0.957 1.370
Spinal 0.981 0.838 1.156
LE 1.017 0.961 1.079
UE 1.250 0.996 1.601

Odds Ratio for five Unit change

kable(TB5.Review) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
2.5 % 97.5 %
BMIC 1.933 0.801 4.826
Spinal 0.910 0.414 2.067
LE 1.086 0.819 1.465
UE 3.051 0.982 10.509

Odds Ratio for 10 Unit change

Please note the CI is very large indicating its not at all reliable and has large SE

kable(TB10.Review) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
2.5 % 97.5 %
BMIC 3.735 0.642 23.290
Spinal 0.828 0.171 4.274
LE 1.180 0.671 2.145
UE 9.309 0.964 110.437

Looking at the distribution of Injuries etc., since the CI is very wide

UE Freq
0 39
1 10
2+ 21
UE Freq
0 39
1+ 31
LE Freq
0 19
1 4
2+ 47
LE Freq
0 19
1+ 51
Spinal Freq
0 33
1 6
2+ 31
Spinal Freq
0 33
1+ 37

Trying Logistic Regression

two-way contingency table of categorical outcome and predictors we want to make sure there are no 0 or small cells

0 1 2+
0 19 5 15
1+ 14 1 16
0 1+
0 19 20
1+ 14 17
0 1 2+
0 11 4 24
1+ 8 0 23
0 1+
0 11 28
1+ 8 23
0 1 2+
0 25 8 6
1+ 14 2 15
0 1+
0 25 14
1+ 14 17

Fitting Logistic Regression

Since having three categories for each of the independent variable ( LE, UE and Spinal Injury) stretches the data too far resulting in some extreme small cells with freq <= 0, we will stick with two categories of indep variables.

Make sure to convert categorical indep variables to a factor to indicate they are categorical variable.

## 
## Call:
## glm(formula = ConcB_1 ~ BMIC + UE3 + LE3 + Spinal3, family = "binomial", 
##     data = ReviewComplete_New)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -1.4407  -1.0201  -0.8266   1.1519   1.6296  
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)
## (Intercept) -2.90492    2.10103  -1.383    0.167
## BMIC         0.10186    0.09002   1.131    0.258
## UE31+        0.71880    0.50968   1.410    0.158
## LE31+        0.17498    0.63153   0.277    0.782
## Spinal31+   -0.15226    0.57194  -0.266    0.790
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 96.124  on 69  degrees of freedom
## Residual deviance: 92.274  on 65  degrees of freedom
## AIC: 102.27
## 
## Number of Fisher Scoring iterations: 4
##                   2.5 %    97.5 %
## (Intercept) -7.22044177 1.1213373
## BMIC        -0.07133217 0.2864450
## UE31+       -0.27415774 1.7367069
## LE31+       -1.06540270 1.4399246
## Spinal31+   -1.29089156 0.9728046
OR 2.5 % 97.5 %
(Intercept) 0.05 0.00 3.07
BMIC 1.11 0.93 1.33
UE31+ 2.05 0.76 5.68
LE31+ 1.19 0.34 4.22
Spinal31+ 0.86 0.28 2.65

Since there can be association between the UE, LE and Spinal Injuries we will look at UE and BMI only

OR 2.5 % 97.5 %
(Intercept) 0.07 0.00 3.02
BMIC 1.10 0.93 1.32
UE31+ 2.02 0.76 5.46

Since there can be association between the UE, LE and Spinal Injuries we will look at LE and BMI only

OR 2.5 % 97.5 %
(Intercept) 0.05 0.00 2.69
BMIC 1.12 0.95 1.34
LE31+ 1.19 0.41 3.61

Since there can be association between the UE, LE and Spinal Injuries we will look at Spinal and BMI only

OR 2.5 % 97.5 %
(Intercept) 0.06 0.00 2.76
BMIC 1.12 0.94 1.33
Spinal31+ 1.07 0.40 2.81

Chisquared Test for binary outcome (Concussions) and binary predictor (UE)

##        UE3
## ConcB_1  0 1+
##      0  25 14
##      1+ 14 17
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  UE.2cats.tab
## X-squared = 1.8024, df = 1, p-value = 0.1794

Chisquared Test for binary outcome (Concussions) and binary predictor (LE)

LE.2cat.Chi<-chisq.test(LE.2cats.tab)
LE.2cats.tab
##        LE3
## ConcB_1  0 1+
##      0  11 28
##      1+  8 23
LE.2cat.Chi
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  LE.2cats.tab
## X-squared = 0, df = 1, p-value = 1

Chisquared Test for binary outcome (Concussions) and binary predicto (Spinal)

Spinal.2cat.Chi<-chisq.test(Spinal.2cats.tab)
Spinal.2cats.tab
##        Spinal3
## ConcB_1  0 1+
##      0  19 20
##      1+ 14 17
Spinal.2cat.Chi
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  Spinal.2cats.tab
## X-squared = 0.0030348, df = 1, p-value = 0.9561

Association between indepndent count variables UE and LE

##     UE3
## LE3   0 1+
##   0  12  7
##   1+ 27 24
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  UE.LE.tab
## X-squared = 0.24474, df = 1, p-value = 0.6208

Association between indepnednet count variables UE and Spinal

##        UE3
## Spinal3  0 1+
##      0  22 11
##      1+ 17 20
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  UE.Spinal.tab
## X-squared = 2.2536, df = 1, p-value = 0.1333

Association between indepnednet count variables LE and Spinal

##        LE3
## Spinal3  0 1+
##      0  16 17
##      1+  3 34
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  LE.Spinal.tab
## X-squared = 12.411, df = 1, p-value = 0.0004269
## 
##  Fisher's Exact Test for Count Data
## 
## data:  LE.Spinal.tab
## p-value = 0.0002974
## alternative hypothesis: true odds ratio is not equal to 1
## 95 percent confidence interval:
##   2.472796 62.658361
## sample estimates:
## odds ratio 
##   10.28369

Looking at association between outcome/Concussions (categorical) and BMI ( covariate being adjusted for)

BMI.Conc.tab<-xtabs(~ConcB_1 + BMIB, data = ReviewComplete_New)
BMI.Conc.tab
##        BMIB
## ConcB_1  0  1
##      0  28 11
##      1+ 19 12
BMI.Conc.Chi<-chisq.test(BMI.Conc.tab)
BMI.Conc.Chi
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  BMI.Conc.tab
## X-squared = 0.45334, df = 1, p-value = 0.5008

Looking at association between predictor/UE (categorical) and BMI (covariate being adjusted for)

BMI.UE.tab<-xtabs(~UE3 + BMIB, data = ReviewComplete_New)
BMI.UE.tab
##     BMIB
## UE3   0  1
##   0  29 10
##   1+ 18 13
BMI.UE.Chi<-chisq.test(BMI.UE.tab)
BMI.UE.Chi
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  BMI.UE.tab
## X-squared = 1.4056, df = 1, p-value = 0.2358

Looking at association between predictor/UE (3 categories) and BMI (covariate being adjusted for)

BMI.UEB.tab<-xtabs(~UE2 + BMIB, data = ReviewComplete_New)
BMI.UEB.tab
##     BMIB
## UE2   0  1
##   0  29 10
##   1   5  5
##   2+ 13  8
BMI.UEB.Chi<-chisq.test(BMI.UEB.tab)
## Warning in chisq.test(BMI.UEB.tab): Chi-squared approximation may be
## incorrect
BMI.UEB.Chi
## 
##  Pearson's Chi-squared test
## 
## data:  BMI.UEB.tab
## X-squared = 2.5138, df = 2, p-value = 0.2845

looking at associations between independent variables with 3 categories for each

countsLEUE <- table(ReviewComplete_New$LE2, ReviewComplete_New$UE2)
#
countsLEUE
##     
##       0  1 2+
##   0  12  3  4
##   1   2  1  1
##   2+ 25  6 16
kable(countsLEUE,col.names=c("No UE", "1 UE","2+UE")) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
No UE 1 UE 2+UE
0 12 3 4
1 2 1 1
2+ 25 6 16
LE.UE.Chi<-chisq.test(countsLEUE)
## Warning in chisq.test(countsLEUE): Chi-squared approximation may be
## incorrect
LE.UE.Chi
## 
##  Pearson's Chi-squared test
## 
## data:  countsLEUE
## X-squared = 1.49, df = 4, p-value = 0.8284
countsLESpinal <- table(ReviewComplete_New$LE2, ReviewComplete_New$Spinal2)
#
countsLESpinal
##     
##       0  1 2+
##   0  16  1  2
##   1   2  1  1
##   2+ 15  4 28
kable(countsLESpinal,col.names=c("No SE", "1 SE","2+SE")) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
No SE 1 SE 2+SE
0 16 1 2
1 2 1 1
2+ 15 4 28
LE.SE.Chi<-chisq.test(countsLESpinal)
## Warning in chisq.test(countsLESpinal): Chi-squared approximation may be
## incorrect
LE.SE.Chi
## 
##  Pearson's Chi-squared test
## 
## data:  countsLESpinal
## X-squared = 17.065, df = 4, p-value = 0.001877
countsSEUE <- table(ReviewComplete_New$Spinal2, ReviewComplete_New$UE2)
#
countsSEUE
##     
##       0  1 2+
##   0  22  3  8
##   1   3  2  1
##   2+ 14  5 12
kable(countsSEUE,col.names=c("No UE", "1 UE","2+UE")) %>%
  kable_styling(bootstrap_options = "striped", full_width = F, position = "left",font_size = 14)
No UE 1 UE 2+UE
0 22 3 8
1 3 2 1
2+ 14 5 12
SE.UE.Chi<-chisq.test(countsLEUE)
## Warning in chisq.test(countsLEUE): Chi-squared approximation may be
## incorrect
SE.UE.Chi
## 
##  Pearson's Chi-squared test
## 
## data:  countsLEUE
## X-squared = 1.49, df = 4, p-value = 0.8284