Introduction

This example uses the FED dataset as a pilot FROC study and function SsFrocNhRsmModel() to construct the NH model (encapsulating some of the code in the previous vignette).

Constructing the NH model for the dataset

One starts by extracting the first two treatments from dataset04, which represent the NH dataset, see previous vignette. Next one constructs the NH model - note that the lesion distribution lesionPmf can be specified here independently of that in the pilot dataset. This allows some control over selection of the diseased cases in the pivotal study.

The fitting model is defined by muMed = r muMed, lambdaMed = 5.6140942 and nuMed = 0.3696988 and lesionPmf. The effect size scale factor is 2.1542102.

The null hypothesis ROC AUC is 0.8790725 and the corresponding NH wAFROC AUC is 0.7231709.

Extracting the wAFROC variance components

The next code block applies StSignificanceTesting() to frocNhData, using FOM = "wAFROC" and extracts the variance components.

varCompwAFROC  <- StSignificanceTesting(frocNhData, FOM = "wAFROC", method = "DBMH", option = "RRRC")$varComp

wAFROC power for specified ROC effect size, number of readers J and number of cases K

The following example is for ROC effect size = 0.05, 5 readers (J) and 100 cases (K) in the pivotal study.

wAFROC number of cases for 80% power for a given number of readers J


varYTR <- varCompwAFROC$varTR 
varYTC <- varCompwAFROC$varTC
varYEps <- varCompwAFROC$varErr
ret2 <- SsSampleSizeKGivenJ(dataset = NULL, J = 6, effectSize = effectSizewAFROC, method = "DBMH", 
                      list(varYTR = varYTR, varYTC = varYTC, varYEps = varYEps))

cat("ROC-ES = ", ROC_ES, ", wAFROC-ES = ", ROC_ES * scaleFactor, 
    ", K80RRRC = ", ret2$KRRRC, ", Power-wAFROC = ", ret2$powerRRRC, "\n")
#> ROC-ES =  0.05 , wAFROC-ES =  0.1077105 , K80RRRC =  42 , Power-wAFROC =  0.804794

wAFROC Power for a given number of readers J and cases K


ret3 <- SsPowerGivenJK(dataset = NULL, J = 6, K = ret2$KRRRC, effectSize = effectSizewAFROC, method = "DBMH", 
                    list(varYTR = varYTR, varYTC = varYTC, varYEps = varYEps))

cat("ROC-ES = ", ROC_ES, ", wAFROC-ES = ", ROC_ES * scaleFactor, 
    ", powerRRRC = ", ret3$powerRRRC, "\n")
#> ROC-ES =  0.05 , wAFROC-ES =  0.1077105 , powerRRRC =  0.804794

The estimated power is close to 80% as the number of cases (ret2$KRRRC = 42) was chosen deliberately from the previous code block.

References