Pre-Clean

Load libraries and data

#####################Read and Pre-Clean the Data#######################
require(Amelia)
## Loading required package: Amelia
## Loading required package: Rcpp
## ## 
## ## Amelia II: Multiple Imputation
## ## (Version 1.7.6, built: 2019-11-24)
## ## Copyright (C) 2005-2020 James Honaker, Gary King and Matthew Blackwell
## ## Refer to http://gking.harvard.edu/amelia/ for more information
## ##
library(car)
## Loading required package: carData
library(ggcorrplot)
## Loading required package: ggplot2
library(kableExtra)
library(MANOVA.RM)
## Warning: package 'MANOVA.RM' was built under R version 4.0.3
library(MASS)
library(mvtnorm)
require(psych) #to describe
## Loading required package: psych
## 
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
## 
##     %+%, alpha
## The following object is masked from 'package:car':
## 
##     logit
require(ggplot2)
require(reticulate) #to use Python in R as well
## Loading required package: reticulate
require(ResourceSelection)
## Loading required package: ResourceSelection
## ResourceSelection 0.3-5   2019-07-22
library(rstatix)
## Warning: package 'rstatix' was built under R version 4.0.3
## 
## Attaching package: 'rstatix'
## The following object is masked from 'package:MASS':
## 
##     select
## The following object is masked from 'package:ggcorrplot':
## 
##     cor_pmat
## The following object is masked from 'package:stats':
## 
##     filter
library(tidyverse)
## -- Attaching packages --------------------------------------------- tidyverse 1.3.0 --
## v tibble  3.0.3     v dplyr   1.0.2
## v tidyr   1.1.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.5.0
## v purrr   0.3.4
## -- Conflicts ------------------------------------------------ tidyverse_conflicts() --
## x psych::%+%()        masks ggplot2::%+%()
## x psych::alpha()      masks ggplot2::alpha()
## x dplyr::filter()     masks rstatix::filter(), stats::filter()
## x dplyr::group_rows() masks kableExtra::group_rows()
## x dplyr::lag()        masks stats::lag()
## x dplyr::recode()     masks car::recode()
## x dplyr::select()     masks rstatix::select(), MASS::select()
## x purrr::some()       masks car::some()
mydata=read.csv("C:/Users/lfult/Desktop/Education/2020spring.csv", stringsAsFactors = TRUE)
colnames(mydata)
##  [1] "Subject"     "Gender"      "Ethnicity"   "Age"         "Yr"         
##  [6] "DaysBetween" "GPA"         "T_GPA"       "PrePost"     "Fin"        
## [11] "Mgt"         "HR"          "Sys"         "HIM"         "Ldr"        
## [16] "Chg"         "Cli"         "QI"          "Strat"       "Com"        
## [21] "Lgl"         "Score"       "Rank"        "Time"
#########################################################################

Check Missing

#########################################################################
missmap(mydata)

#########################################################################

Descriptive Statistics / Univariate Graphs / Crosstabs

Pre-Test

pre=round(describe(mydata[1:54,10:24]),3)
post=round(describe(mydata[55:108, 10:24]),3)
mydelta=mydata[55:108, 10:24]-mydata[1:54, 10:24]
delta=round(describe(mydelta))
mynames=c("Financial Management", "General Management", "Healthcare Personnel", "Healthcare Systems & Organizations", "Information Managment", "Leadership Skills and Behavior", "Managing Change", "Organizational Climate and Culture", "Quality Improvement", "Strategic Planning and Marketing", "The Community and the Environment", "The Legal Environment of Healthcare Administration", "Final Score", "Percentile Rank", "Time" )
row.names(pre)=row.names(post)=row.names(delta)=mynames

pre%>%kbl(caption="Pre-Test")%>%kable_classic(full_width = F, html_font = "Cambria") 
Pre-Test
vars n mean sd median trimmed mad min max range skew kurtosis se
Financial Management 1 54 55.926 18.173 50.00 55.909 14.826 10.00 100.00 90.00 0.011 -0.165 2.473
General Management 2 54 59.259 16.119 60.00 59.545 14.826 30.00 90.00 60.00 -0.148 -0.752 2.194
Healthcare Personnel 3 54 64.630 14.500 60.00 65.000 14.826 30.00 90.00 60.00 -0.238 -0.178 1.973
Healthcare Systems & Organizations 4 54 53.333 19.230 50.00 52.727 14.826 10.00 100.00 90.00 0.281 -0.239 2.617
Information Managment 5 54 58.333 18.300 60.00 59.318 14.826 10.00 90.00 80.00 -0.393 -0.539 2.490
Leadership Skills and Behavior 6 54 58.704 15.667 60.00 59.091 14.826 20.00 90.00 70.00 -0.165 -0.369 2.132
Managing Change 7 54 61.481 12.945 60.00 61.591 14.826 30.00 90.00 60.00 -0.168 -0.033 1.762
Organizational Climate and Culture 8 54 63.889 16.981 60.00 64.091 14.826 30.00 100.00 70.00 -0.085 -0.390 2.311
Quality Improvement 9 54 57.963 18.262 60.00 58.409 14.826 20.00 90.00 70.00 -0.251 -0.770 2.485
Strategic Planning and Marketing 10 54 56.111 17.953 60.00 56.364 14.826 10.00 90.00 80.00 -0.149 -0.565 2.443
The Community and the Environment 11 54 53.148 16.577 50.00 52.727 14.826 20.00 100.00 80.00 0.284 -0.057 2.256
The Legal Environment of Healthcare Administration 12 54 61.111 16.214 60.00 60.455 14.826 30.00 100.00 70.00 0.319 -0.521 2.206
Final Score 13 54 58.654 7.920 59.58 58.879 8.036 39.16 78.33 39.17 -0.124 -0.100 1.078
Percentile Rank 14 54 58.685 22.862 63.00 60.045 26.687 7.00 98.00 91.00 -0.361 -0.680 3.111
Time 15 54 41.721 15.714 39.75 40.428 16.019 13.75 82.08 68.33 0.672 -0.159 2.138
post%>%kbl(caption="Post-Test")%>%kable_classic(full_width = F, html_font = "Cambria") 
Post-Test
vars n mean sd median trimmed mad min max range skew kurtosis se
Financial Management 1 54 73.519 15.192 70.000 73.636 14.826 40.00 100.0 60.00 -0.087 -0.537 2.067
General Management 2 54 77.222 11.561 80.000 77.500 14.826 50.00 100.0 50.00 -0.178 -0.248 1.573
Healthcare Personnel 3 54 79.444 13.091 80.000 80.227 14.826 30.00 100.0 70.00 -0.940 1.867 1.782
Healthcare Systems & Organizations 4 54 67.963 16.297 70.000 68.636 14.826 30.00 100.0 70.00 -0.191 -0.796 2.218
Information Managment 5 54 66.667 12.286 70.000 66.136 14.826 50.00 90.0 40.00 0.100 -0.973 1.672
Leadership Skills and Behavior 6 54 77.037 15.126 80.000 77.273 14.826 50.00 100.0 50.00 -0.047 -1.078 2.058
Managing Change 7 54 70.556 13.656 70.000 71.364 14.826 40.00 90.0 50.00 -0.447 -0.620 1.858
Organizational Climate and Culture 8 54 75.741 16.206 80.000 76.364 14.826 30.00 100.0 70.00 -0.483 -0.330 2.205
Quality Improvement 9 54 72.963 13.822 70.000 73.409 14.826 40.00 100.0 60.00 -0.192 -0.622 1.881
Strategic Planning and Marketing 10 54 77.407 12.004 80.000 77.955 14.826 50.00 100.0 50.00 -0.339 -0.609 1.634
The Community and the Environment 11 54 68.148 16.261 70.000 69.318 14.826 0.00 90.0 90.00 -1.463 3.879 2.213
The Legal Environment of Healthcare Administration 12 54 74.630 17.344 80.000 75.455 14.826 30.00 100.0 70.00 -0.461 -0.520 2.360
Final Score 13 54 71.505 5.129 71.915 71.691 4.559 58.46 82.3 23.84 -0.348 -0.142 0.698
Percentile Rank 14 54 80.389 15.674 84.000 82.864 8.896 0.00 97.0 97.00 -2.801 10.824 2.133
Time 15 54 74.930 19.011 73.665 74.719 18.147 34.77 119.9 85.13 0.152 -0.364 2.587
delta%>%kbl(caption="Difference, Post Minus Pre")%>%kable_classic(full_width = F, html_font = "Cambria") 
Difference, Post Minus Pre
vars n mean sd median trimmed mad min max range skew kurtosis se
Financial Management 1 54 18 23 20 18 30 -20 60 80 0 -1 3
General Management 2 54 18 21 20 17 15 -20 70 90 0 -1 3
Healthcare Personnel 3 54 15 21 10 15 15 -40 60 100 0 0 3
Healthcare Systems & Organizations 4 54 15 26 15 15 37 -40 70 110 0 -1 4
Information Managment 5 54 8 22 10 8 30 -30 50 80 0 -1 3
Leadership Skills and Behavior 6 54 18 21 20 18 15 -20 70 90 0 0 3
Managing Change 7 54 9 20 10 9 15 -50 60 110 0 1 3
Organizational Climate and Culture 8 54 12 19 10 12 15 -30 60 90 0 0 3
Quality Improvement 9 54 15 20 20 14 15 -30 60 90 0 0 3
Strategic Planning and Marketing 10 54 21 20 20 21 30 -20 70 90 0 -1 3
The Community and the Environment 11 54 15 23 15 16 22 -40 70 110 0 0 3
The Legal Environment of Healthcare Administration 12 54 14 24 10 13 22 -40 60 100 0 -1 3
Final Score 13 54 13 9 12 12 10 1 35 35 0 -1 1
Percentile Rank 14 54 22 25 20 21 27 -48 82 130 0 0 3
Time 15 54 33 18 33 32 18 -6 78 83 0 0 2

Ethnicity and Race

#########################################################################
levels(mydata$Ethnicity)=c("Asian", "African American", "Caucasian", "Any Hispanic") #Assign new names to factor levels
ethtable=as.data.frame(table(mydata$Ethnicity[1:54],mydata$Gender[1:54])/length(mydata$Ethnicity[1:54])) #get a cross-tabs table for race and gender
colnames(ethtable)=c("Race","Gender", "Percentage")#set the colum names for the table
mylab=paste0(round(ethtable$Percentage,2)*100,"%, ", ethtable$Percentage*54, " students") #Get the labels for the graph

ggplot(data=ethtable, aes(x=Race,y=Percentage, fill=Gender))+
  geom_bar(stat="identity")+
  geom_text(aes( label = mylab,  vjust = 1))

#########################################################################

Age Analysis

Analyze age as a function of race and gender

#########################################################################
describe(mydata$Age[1:54]) #get the descriptive statistics
##    vars  n  mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 54 22.96 3.32     22    22.3 1.48  20  42    22 3.81    17.77 0.45
ggplot(data=mydata[1:54,], aes(x=Age,color=Gender))+
  geom_histogram(fill="white", binwidth=1)+
  ylab("Frequency")  #plot Age ~Gender

ggplot(data=mydata[1:54,], aes(x=Age,color=Ethnicity))+
  geom_histogram(fill="white", binwidth=1)+
  ylab("Frequency")  #plot Age~ Race

#########################################################################

GPA

#########################################################################
describe(mydata$GPA[1:54]) #Get descriptives
##    vars  n mean   sd median trimmed  mad  min max range skew kurtosis   se
## X1    1 54 3.19 0.23   3.18    3.18 0.27 2.85 3.7  0.85 0.44    -0.89 0.03
ggplot(mydata[1:54, ], aes(x = Ethnicity, y = GPA, fill=Ethnicity))+
  geom_boxplot(aes(color=Gender))+
  coord_flip()  #plot based on ethnicity and gender

#########################################################################

CI for GPA~Race and Gender

Evaluating GPA as a function of race and gender

#########################################################################
newdata1=aggregate(mydata$GPA[1:54], b=list(mydata$Ethnicity[1:54],mydata$Gender[1:54]), FUN=mean) #aggregate the data based on race and gender, get the means by those groups

newdata2=aggregate(mydata$GPA[1:54],b=list(mydata$Ethnicity[1:54],mydata$Gender[1:54]),function(x){qnorm(.975)*sd(x)/sqrt(length(x))}) #get the CI adjustment

newdata=cbind(newdata1,newdata2$x)  #bind the data together by columns
colnames(newdata)=c("Race", "Gender", "GPA", "SD") #name the columns
newdata$RaceGender=as.factor(paste0(newdata$Race,", ",newdata$Gender)) #make a new variable that has both race and gender
ggplot(   #plot
  newdata, 
  aes(x = GPA, y = RaceGender, xmin = GPA-SD, xmax = GPA+SD)
  ) +
  geom_point(aes(color = Gender)) +
  geom_errorbarh(aes(color = Gender), height=.2)+
  theme_light()+
  xlab("95% Confidence Interval for GPA")

#########################################################################

Days between Pre-Post

Analyze the time between pretests and posttests

#########################################################################
describe(mydata$DaysBetween[1:54])  #describe the days between
##    vars  n   mean    sd median trimmed   mad min max range skew kurtosis   se
## X1    1 54 435.54 44.18    430  430.05 22.98 333 560   227 1.17     1.56 6.01
ggplot(data=mydata[1:54,], aes(x=DaysBetween,color=Gender))+  #plot it
  geom_histogram(fill="white", binwidth=30)+
  ylab("Frequency")

#########################################################################

Correlation among Quantitative Demographic and Total Score Variables

Look at bivariate pairs

#########################################################################
mysub=subset(mydata, select=c(Age, GPA, Score)) #get a subset for plotting
colnames(mysub)=c("Age", "GPA", "Score") #set column names
kdepairs(mysub) #plot

#########################################################################

Delta Scores by Student

Plot the Delta scores.

#########################################################################
par(mfrow=c(1,1))

myscores=as.data.frame(mydelta[1:13]) #Variables for plotting
mybars=error.bars(myscores)

plot(error.bars(myscores),ylab="Variable", xlab="Delta Score", 
     xlim=c(.5, 13.5), ylim=c(0,length(myscores)),lty="dashed", las=2)

######################################################################### 

Test Multivariate Normality

#########################################################################
myt=powerTransform(as.matrix(mydelta[1:12]+100)~1)
testTransform(myt)%>%kbl()%>%kable_classic(full_width = F, html_font = "Cambria") #########################################################################
LRT df pval
LR test, lambda = (1 1 1 1 1 1 1 1 1 1 1 1) 4.409743 12 0.97486

Paired t-Tests, Holm Adjustment

#########################################################################
myf=function(x){
  myt=t.test(x)
  newp=round(p.adjust(myt$p.value),3)
  a=c(round(myt$estimate,3),round(myt$conf.int[1],3),
      round(myt$conf.int[2],3),round(myt$statistic,3), round(myt$parameter,3),
      round(newp,3))
  return(a)
  
}

a=matrix(rep(NA, 6*15), 15)
for (i in 1:15){a[i,1:6]=myf(mydelta[i])}
a=as.data.frame(a)
for (i in 1:6){a[,i]=as.numeric(a[,i])}
rownames(a)=c("Financial Management", "General Management", "Healthcare Personnel", "Healthcare Systems and Organizations", "Information Management", "Leadership Skills and Behavior", "Managing Change","Organizational Climate and Culture", "Quality Improvement", "Strategic Planning and Marketing","The Community and the Environment","The Legal Environment", "Total Score", "Percentile Rank", "Test Time")
colnames(a)=c("Estimate","Lower 95% CI", "Upper 95% CI", "t-Value", "df", "Holm-Adjusted p")
a%>%kbl()%>%kable_classic()
Estimate Lower 95% CI Upper 95% CI t-Value df Holm-Adjusted p
Financial Management 17.593 11.433 23.752 5.729 53 0.000
General Management 17.963 12.292 23.634 6.354 53 0.000
Healthcare Personnel 14.815 9.037 20.593 5.143 53 0.000
Healthcare Systems and Organizations 14.630 7.443 21.816 4.083 53 0.000
Information Management 8.333 2.340 14.326 2.789 53 0.007
Leadership Skills and Behavior 18.333 12.604 24.062 6.418 53 0.000
Managing Change 9.074 3.738 14.410 3.411 53 0.001
Organizational Climate and Culture 11.852 6.548 17.156 4.482 53 0.000
Quality Improvement 15.000 9.420 20.580 5.392 53 0.000
Strategic Planning and Marketing 21.296 15.888 26.705 7.898 53 0.000
The Community and the Environment 15.000 8.754 21.246 4.817 53 0.000
The Legal Environment 13.519 7.021 20.016 4.173 53 0.000
Total Score 12.851 10.521 15.181 11.062 53 0.000
Percentile Rank 21.704 14.755 28.652 6.265 53 0.000
Test Time 33.209 28.224 38.195 13.360 53 0.000
#########################################################################

t-test: Time 1 versus Time 2

#########################################################################

myf=function(x,y){
  
  myt=t.test(x, y)
  newp=round(p.adjust(myt$p.value),3)
  a=c(round(myt$estimate[1],3),round(myt$estimate[2],3),
      round(myt$conf.int[1],3),   
      round(myt$conf.int[2],3),round(myt$statistic,3), 
      round(myt$parameter,3),round(newp,3))
  return(a)
  
}

a=matrix(rep(NA, 7*15), 15)
for (i in 1:15){a[i,1:7]=myf(mydata[1:54,i+9], mydata[55:108,i+9])}
a=as.data.frame(a)
for (i in 1:6){a[,i]=as.numeric(a[,i])}
rownames(a)=c("Financial Management", "General Management", "Healthcare Personnel", "Healthcare Systems and Organizations", "Information Management", "Leadership Skills and Behavior", "Managing Change","Organizational Climate and Culture", "Quality Improvement", "Strategic Planning and Marketing","The Community and the Environment","The Legal Environment", "Total Score", "Percentile Rank", "Test Time")
colnames(a)=c("Mean Pre","Mean Post","Lower 95% CI", "Upper 95% CI", "t-Value", "df", "Holm-Adjusted p")
a%>%kbl()%>%kable_classic()
Mean Pre Mean Post Lower 95% CI Upper 95% CI t-Value df Holm-Adjusted p
Financial Management 55.926 73.519 -23.985 -11.200 -5.458 102.769 0.000
General Management 59.259 77.222 -23.321 -12.605 -6.655 96.117 0.000
Healthcare Personnel 64.630 79.444 -20.086 -9.544 -5.573 104.912 0.000
Healthcare Systems and Organizations 53.333 67.963 -21.433 -7.827 -4.265 103.222 0.000
Information Management 58.333 66.667 -14.290 -2.377 -2.778 92.708 0.007
Leadership Skills and Behavior 58.704 77.037 -24.209 -12.458 -6.186 105.869 0.000
Managing Change 61.481 70.556 -14.151 -3.997 -3.544 105.699 0.001
Organizational Climate and Culture 63.889 75.741 -18.185 -5.519 -3.710 105.770 0.000
Quality Improvement 57.963 72.963 -21.185 -8.815 -4.813 98.720 0.000
Strategic Planning and Marketing 56.111 77.407 -27.133 -15.460 -7.246 92.494 0.000
The Community and the Environment 53.148 68.148 -21.265 -8.735 -4.747 105.961 0.000
The Legal Environment 61.111 74.630 -19.924 -7.113 -4.184 105.523 0.000
Total Score 58.654 71.505 -15.401 -10.300 -10.009 90.803 0.000
Percentile Rank 58.685 80.389 -29.193 -14.214 -5.754 93.808 0.000
Test Time 41.721 74.930 -39.867 -26.552 -9.894 102.375 0.000
#########################################################################

Appendix A

Program Outcomes (PO) and Student Learning Objectives (SLO)

Teaching

T1. All faculty evaluations (100%) each term have a median of 4.0 or greater out of 5.0 on the question, “Instructor provided the opportunity to learn.” {1=Strongly Disagree,…5=Strongly Agree} PO T2. 100% of faculty members support opportunities for learning professional behavior as evidenced by in class learning activities and activities in SOHA- sponsored functions. PO T3. BHA majors will successfully complete (with a grade of 80% or better) a case study/project in HA 3376 (Financial Management). SLO T4. BHA majors will successfully complete (with a grade of 80% or better) a final exam in HA 3375 (Financial Accounting). SLO T5. 100% of students will successfully complete the field experience (HA 4848) with a passing evaluation by their preceptor. A preceptor analysis will be used to determine application of the above referenced skills needing improvement. SLO T6. 100% of students will successfully complete the final project requirements in the field experience (HA 4848) with a passing evaluation by their preceptor. SLO T7. BHA majors will successfully complete (with a grade of 80% or better) a capstone case study in HA 4325 (strategic management) including an internal audit of strategic assessment; an external environmental assessment; and an assessment of a healthcare organization strategic plan. SLO T8. 90% of students will demonstrate success in the writing intensive courses by scoring B’s or better on the final writing intensive (WI) assignments in HA3324. SLO T9. 90% of students will demonstrate success in oral communication by achieving B’s or better on HA3344 group presentations. SLO T10. 80% of our students will attain IISE Lean Six Sigma Green Belt Certification. SLO T11. 80% of our students will attain Excel Basic MOS Certification. SLO T12. 80% of our students will attain Excel Expert MOS Certification. SLO T13. 80% of our students will attain QuickBooks Certification. SLO T14. 100% of students will successfully complete the comprehensive exam with greater than median (nationwide) comparative scores. SLO T15. 100% of students will have higher post-test scores than pre-test scores on the Peregrine exit exam. SLO

Research

R1. 100% of faculty members are engaged in research activities that support the body of knowledge in their respective fields as evidenced by at least one peer-reviewed publication each year. PO R2. 50% of faculty acquire research funding for the University and the Department (stretch goal). PO R3. 50% of students present a paper, poster or other research outcome at a professional conference or research symposium. SLO R4. 10% of students are a named author on an article submitted for publication in a peer- reviewed journal. SLO R5. 100% of faculty will collaborate either internally or externally for research purposes to build the research portfolio of our program. PO

Service

S1. 100% of faculty members will have demonstrated professional service each year as evidenced by review of CV’s. PO S2. 100% of faculty members will have demonstrated community service each year as evidenced by review of CV’s. PO S3. 100% of faculty provide service at the University, College, School, or Department level. PO

Student Success and Admissions

SS1. 50% of students seeking employment will have jobs within 1 month after graduation. SLO SS2. 100% of students seeking employment will have jobs within 9 months after graduation. SLO SS3. 80% or more of available seats will be filled with highly qualified students each term. PO SS4. 70% of original cohort graduate together. SLO SS5. 25% or more of admitted students will be of minority status. SLO

Program Success

P1. The program will maintain AUPHA certification (binary). PO P2. One or more students will receive national awards. PO P3. The BHA budget remains static or grows but does not shrink. PO P4. 100% of vacant positions are filled. PO P5. Alumni will serve as preceptors and speakers for the program as well as board members. PO P6. In-building student computer facilities increase (binary). PO