# Load necessary libraries and set options at the very beginning
knitr::opts_chunk$set(echo = TRUE, warning=FALSE, message = FALSE)
library(dplyr)
library(ggplot2)
# Read in the data and preview
dat <- read.csv("https://raw.githubusercontent.com/tmatis12/datafiles/refs/heads/main/RadDat_IMSE.csv")
head(dat)
## Unique.Identifier PatientAge Radiology.Technician
## 1 1 75 65
## 2 2 87 65
## 3 3 35 16
## 4 4 51 24
## 5 5 67 37
## 6 6 54 7
## CatalogCode Ordering.Physician PatientTypeMnemonic
## 1 DX Abdomen 2 vw w/single chest 4 IP
## 2 DX Abdomen 2 vw w/single chest 4 IP
## 3 DX Abdomen 2 vw w/single chest 150 IP
## 4 DX Abdomen 2 vw w/single chest 130 IP
## 5 DX Abdomen 2 vw w/single chest 173 IP
## 6 DX Abdomen 2 vw w/single chest 349 IP
## Priority OrderDateTime ExamCompleteDateTime FinalDateTime
## 1 Routine 12/27/16 10:32 12/27/16 11:19 12/28/16 14:32
## 2 Routine 1/13/17 11:44 1/13/17 12:32 1/14/17 16:00
## 3 Routine 1/2/17 17:19 1/2/17 18:00 1/3/17 7:44
## 4 Routine 11/13/16 10:13 11/14/16 9:34 11/14/16 16:40
## 5 STAT 12/13/16 3:22 12/13/16 4:04 12/13/16 3:19
## 6 Routine 1/17/17 5:38 1/17/17 7:47 1/17/17 10:55
## Ordered.to.Complete...Mins Ordered.to.Complete...Hours Loc.At.Exam.Complete
## 1 47 0.7833333 GTU
## 2 48 0.8000000 GTU
## 3 41 0.6833333 3W
## 4 1401 23.3500000 4W
## 5 42 0.7000000 Emergency Ctr
## 6 129 2.1500000 3E
## Exam.Completed.Bucket Section Exam.Room
## 1 8a-8p DX DX Rm 1
## 2 8a-8p DX DX Rm 1
## 3 8a-8p EC DX DX Rm 5 (EC)
## 4 8a-8p DX DX Rm 1
## 5 12a-8a EC DX DX Rm 5 (EC)
## 6 12a-8a DX DX Portable
# Filter data to remove negative times
data_filtered <- dat %>% filter(Ordered.to.Complete...Mins >= 0)
medicare_patients <- dplyr::filter(data_filtered, PatientAge >= 65)
Q1 <- quantile(medicare_patients$Ordered.to.Complete...Mins, 0.25)
Q3 <- quantile(medicare_patients$Ordered.to.Complete...Mins, 0.75)
IQR_range <- dplyr::filter(medicare_patients, Ordered.to.Complete...Mins >= Q1 & Ordered.to.Complete...Mins <= Q3)
hist(IQR_range$Ordered.to.Complete...Mins, main = "Histogram of Order Completion Times within IQR",
xlab = "Ordered to Complete Time (Mins)",
ylab = "Frequency")
This shows that as the time increases the frequency of an xray
decreases.
tech_62 <- dplyr::filter(data_filtered, Radiology.Technician == 62)
tech_65 <- dplyr::filter(data_filtered, Radiology.Technician == 65)
median(tech_62$Ordered.to.Complete...Mins)
## [1] 80
#80
median(tech_65$Ordered.to.Complete...Mins)
## [1] 27
#27
This means Tech 65 takes more time to complete tasks than 62.
Priority <- data_filtered[data_filtered$Priority == "STAT", ]
Routine <- data_filtered[data_filtered$Priority == "Routine", ]
boxplot(Priority$PatientAge, Routine$PatientAge,
names = c("STAT", "XRay"),main="Boxplot",xlab="Priority",ylab="age")
There is a large range of people needing fast xrays.
Floor3W <- data_filtered[data_filtered$Loc.At.Exam.Complete == "3W", ]
Floor4W <- data_filtered[data_filtered$Loc.At.Exam.Complete == "4W", ]
mean(Floor3W$Ordered.to.Complete...Mins)
## [1] 1463.051
#1463.051
mean(Floor4W$Ordered.to.Complete...Mins)
## [1] 1675.451
#1675.451
#This indicates that, on average, X-ray orders on floor 4W take longer to complete than those on floor 3W.
sd(Floor3W$Ordered.to.Complete...Mins)
## [1] 3894.639
#3894.639
sd(Floor4W$Ordered.to.Complete...Mins)
## [1] 4387.644
#4387.644
This suggests a significant variation in the completion times for both floors since the sd are so high.
# HomeWork 5 Michelle Snider
# Reading in File and naming
dat<-read.csv("https://raw.githubusercontent.com/tmatis12/datafiles/refs/heads/main/RadDat_IMSE.csv")
head(dat)
data_filtered <- dat %>% filter(Ordered.to.Complete...Mins >= 0)
#download dplyr
install.packages(c( "dplyr"))
library(dplyr)
# Part 1
medicare_patients <- dplyr::filter(data_filtered, PatientAge >= 65)
Q1 <- quantile(medicare_patients$Ordered.to.Complete...Mins, 0.25)
Q3 <- quantile(medicare_patients$Ordered.to.Complete...Mins, 0.75)
IQR_range <- dplyr::filter(medicare_patients, Ordered.to.Complete...Mins >= Q1 & Ordered.to.Complete...Mins <= Q3)
hist(IQR_range$Ordered.to.Complete...Mins, main = "Histogram of Order Completion Times within IQR",
xlab = "Ordered to Complete Time (Mins)",
ylab = "Frequency")
#This shows that as the time increases the frequency of an xray decreases.
# Part 2
tech_62 <- dplyr::filter(data_filtered, Radiology.Technician == 62)
tech_65 <- dplyr::filter(data_filtered, Radiology.Technician == 65)
# Calculate median times for each technician
median(tech_62$Ordered.to.Complete...Mins)
#80
median(tech_65$Ordered.to.Complete...Mins)
#27
#This means Tech 65 takes more time to complete tasks than 62.
# Part 3
Priority <- data_filtered[data_filtered$Priority == "STAT", ]
Routine <- data_filtered[data_filtered$Priority == "Routine", ]
boxplot(Priority$PatientAge, Routine$PatientAge,
names = c("STAT", "XRay"),main="Boxplot",xlab="Priority",ylab="age")
#There is a large range of people needing fast xrays.
#Part 4
Floor3W <- data_filtered[data_filtered$Loc.At.Exam.Complete == "3W", ]
Floor4W <- data_filtered[data_filtered$Loc.At.Exam.Complete == "4W", ]
mean(Floor3W$Ordered.to.Complete...Mins)
#1463.051
mean(Floor4W$Ordered.to.Complete...Mins)
#1675.451
#This indicates that, on average, X-ray orders on floor 4W take longer to complete than those on floor 3W.
sd(Floor3W$Ordered.to.Complete...Mins)
#3894.639
sd(Floor4W$Ordered.to.Complete...Mins)
#4387.644
#This suggests a significant variation in the completion times for both floors since the sd are so high.