Learn R Programming

dmetatools (version 1.1.1)

AUC_comparison: Bootstrap test for the difference of AUCs of summary ROC curves for multiple diagnostic tests

Description

Calculating the difference of AUCs of summary ROC curves (dAUC) and its confidence interval, and the p-value for the test of "dAUC=0" by parametric bootstrap.

Usage

AUC_comparison(TP1, FP1, FN1, TN1, TP2, FP2, FN2, TN2, B=2000, alpha=0.05)

Value

The AUCs of the summary ROC curves and their confidence intervals are calculated. Also, the difference of the AUCs (dAUC) and its confidence interval, and the p-value for the test of "dAUC=0" are provided.

  • AUC1: The AUC of the summary ROC curve for test 1.

  • AUC1_CI: The 95% confidence interval for the AUC of the summary ROC curve for test 1 (the confidence level can be changed by alpha).

  • AUC2: The AUC of the summary ROC curve for test 2.

  • AUC2_CI: The 95% confidence interval for the AUC of the summary ROC curve for test 2 (the confidence level can be changed by alpha).

  • dAUC: The difference of the AUC1 and AUC2.

  • dAUC_CI: The 95% confidence interval for dAUC (the confidence level can be changed by alpha).

  • pvalue: The p-value of the test of dAUC=0.

Arguments

TP1

A vector of the number of true positives (TP) of test 1

FP1

A vector of the number of false positives (FP) of test 1

FN1

A vector of the number of false negatives (FN) of test 1

TN1

A vector of the number of true negatives (TN) of test 1

TP2

A vector of the number of true positives (TP) of test 2

FP2

A vector of the number of false positives (FP) of test 2

FN2

A vector of the number of false negatives (FN) of test 2

TN2

A vector of the number of true negatives (TN) of test 2

B

The number of bootstrap resampling (default: 2000)

alpha

The significance level (default: 0.05)

Author

Hisashi Noma <noma@ism.ac.jp>

References

Noma, H., Matsushima, Y., and Ishii, R. (2021). Confidence interval for the AUC of SROC curve and some related methods using bootstrap for meta-analysis of diagnostic accuracy studies. Communications in Statistics: Case Studies and Data Analysis 7: 344-358. tools:::Rd_expr_doi("10.1080/23737484.2021.1894408")

Examples

Run this code
require(mada)

data(cervical)

CT <- cervical[cervical$method==1,]
LAG <- cervical[cervical$method==2,]
MRI <- cervical[cervical$method==3,]

fit1 <- reitsma(CT)    # DTA meta-analysis using the Reitsma model
summary(fit1)
fit2 <- reitsma(LAG)
summary(fit2)
fit3 <- reitsma(MRI)
summary(fit3)

plot(fit1)    # Plot the SROC curves
lines(sroc(fit2), lty=2, col="blue")
ROCellipse(fit2, lty=2, pch=2, add=TRUE, col="blue")
lines(sroc(fit3), lty=3, col="red")
ROCellipse(fit3, lty=3, pch=3, add=TRUE, col="red")
points(fpr(CT), sens(CT), cex = .5)
points(fpr(LAG), sens(LAG), pch = 2, cex = 0.5, col="blue")
points(fpr(MRI), sens(MRI), pch = 3, cex = 0.5, col="red")
legend("bottomright", c("CT", "LAG", "MRI"), pch = 1:3, lty = 1:3, col=c("black","blue","red"))

AUC_comparison(CT$TP,CT$FP,CT$FN,CT$TN,LAG$TP,LAG$FP,LAG$FN,LAG$TN,B=5)
AUC_comparison(MRI$TP,MRI$FP,MRI$FN,MRI$TN,LAG$TP,LAG$FP,LAG$FN,LAG$TN,B=5)
AUC_comparison(MRI$TP,MRI$FP,MRI$FN,MRI$TN,CT$TP,CT$FP,CT$FN,CT$TN,B=5)
# These are example commands for illustration. B should be >= 1000.

Run the code above in your browser using DataLab