data <- data.frame(
Study = c("Tingna Wu/2021", "D. B. Sibandze/2022", "Peiyun Liu/2024", "Lishu Zhang/2024",
"Suting Chen/2023", "Jiayuan Ye/2024", "Xiaocui Wu/2023", "Zhongpeng Yang/2024",
"Hongtai Zhang/2024", "Hui Lv/2024", "Trinh Thi Bich Tram", "Weiwei Gao/2024",
"Yu TAO/2024", "Guang Zhang/2023", "Andrea Maurizio Cab", "Huiwen Zheng/2024",
"Xiaoke Sun/2023", "Yifan Guo/2023", "Priti Kambli/2024", "Guocan Yu/2024",
"Qiang Zhang/2024", "K. Nilgiriwala/2023"),
TP = c(14, 51, 69, 57, 160, 10, 77, 61, 53, 8, 50, 82, 85, 48, 102, 25, 43, 9, 7, 108, 61, 54),
FP = c(0, 3, 3, 6, 4, 0, 25, 0, 3, 0, 0, 1, 0, 0, 0, 4, 0, 1, 0, 3, 1, 0),
TN = c(0, 10, 42, 54, 41, 46, 23, 0, 17, 0, 0, 1, 160, 0, 0, 27, 10, 437, 0, 21, 80, 12),
FN = c(20, 21, 4, 2, 22, 0, 5, 1, 56, 0, 22, 11, 5, 2, 2, 47, 5, 3, 13, 17, 21, 8)
)
data$Sensitivity <- data$TP / (data$TP + data$FN)
data$Specificity <- data$TN / (data$TN + data$FP)
data$Accuracy <- (data$TP + data$TN) / (data$TP + data$TN + data$FP + data$FN)
par(mfrow = c(2, 2))
plot(1:nrow(data), data$Sensitivity,
type = "p",
col = "blue",
ylim = c(0, 1),
xlab = "Study Index",
ylab = "Value",
main = "Sensitivity and Specificity",
xaxt = "n")
points(1:nrow(data), data$Specificity, col = "red")
abline(h = 0.5, lty = 2, col = "gray")
legend("bottomright",
legend = c("Sensitivity", "Specificity"),
col = c("blue", "red"),
pch = 1)
plot(data$FP, data$TP,
xlab = "False Positive",
ylab = "True Positive",
main = "TP vs FP",
col = "blue")
barplot(t(as.matrix(data[, c("TP", "FP", "TN", "FN")])),
beside = FALSE,
col = c("green", "red", "blue", "yellow"),
main = "Test Results Distribution",
xlab = "Study Index",
ylab = "Count",
legend.text = c("TP", "FP", "TN", "FN"))
barplot(data$Accuracy,
main = "Accuracy by Study",
ylab = "Accuracy",
ylim = c(0, 1),
col = "lightblue")
par(mfrow = c(1, 1))
cat("\nSummary Statistics:\n")
cat("Mean Sensitivity:", mean(data$Sensitivity), "\n")
cat("Mean Specificity:", mean(data$Specificity), "\n")
cat("Mean Accuracy:", mean(data$Accuracy), "\n")
cat("\nDiagnostic Matrix Summary:\n")
cat("Total TP:", sum(data$TP), "\n")
cat("Total FP:", sum(data$FP), "\n")
cat("Total TN:", sum(data$TN), "\n")
cat("Total FN:", sum(data$FN), "\n")