Nothing
library(testthat)
library(iMRMC)
context("uStat11")
init.lecuyerRNG()
# This flag should always be false except when the tests are first created.
flagSave <- FALSE
if (flagSave) {
saveResult <- list()
}
# Create an MRMC data frame
# Refer to Gallas2014_J-Med-Img_v1p031006
simRoeMetz.config <- sim.gRoeMetz.config()
# Simulate data
df.MRMC <- sim.gRoeMetz(simRoeMetz.config)
# Reformat data
df <- undoIMRMCdf(df.MRMC)
# Grab part of the data
df <- droplevels(df[grepl("pos", df$caseID), ])
#### uStat11.jointD.identity ####
# Calculate the reader- and case-averaged difference in scores from testA and testB
# (kernelFlag = 1 specifies the U-statistics kernel to be the identity)
result.jointD.identity <- uStat11.jointD(
df,
kernelFlag = 1,
keyColumns = c("readerID", "caseID", "modalityID", "score"),
modalitiesToCompare = c("testA", "testB"))
cat("\n")
cat("uStat11.jointD.identity \n")
print(result.jointD.identity[1:2])
if (flagSave) {
saveResult$jointD.identity <- result.jointD.identity
}
#### uStat11.conditionalD.identity ####
# Calculate the reader- and case-averaged difference in scores from testA and testB
# (kernelFlag = 1 specifies the U-statistics kernel to be the identity)
result.conditionalD.identity <- uStat11.conditionalD(
df,
kernelFlag = 1,
keyColumns = c("readerID", "caseID", "modalityID", "score"),
modalitiesToCompare = c("testA", "testB"))
cat("\n")
cat("uStat11.conditionalD.identity \n")
print(result.conditionalD.identity[1:2])
if (flagSave) {
saveResult$conditionalD.identity <- result.conditionalD.identity
}
#### uStat11.jointD.diff ####
# Calculate the reader- and case-averaged difference in scores from testA and testB
# (kernelFlag = 2 specifies the U-statistics kernel to be the difference in scores)
result.jointD.diff <- uStat11.jointD(
df,
kernelFlag = 2,
keyColumns = c("readerID", "caseID", "modalityID", "score"),
modalitiesToCompare = c("testA", "testB", "testB", "testA"))
cat("\n")
cat("uStat11.jointD.diff \n")
print(result.jointD.diff[1:2])
if (flagSave) {
saveResult$jointD.diff <- result.jointD.diff
}
#### uStat11.conditionalD.diff ####
# Calculate the reader- and case-averaged difference in scores from testA and testB
# (kernelFlag = 2 specifies the U-statistics kernel to be the difference in scores)
result.conditionalD.diff <- uStat11.conditionalD(
df,
kernelFlag = 2,
keyColumns = c("readerID", "caseID", "modalityID", "score"),
modalitiesToCompare = c("testA", "testB", "testB", "testA"))
cat("\n")
cat("uStat11.conditionalD.diff \n")
print(result.conditionalD.diff[1:2])
if (flagSave) {
saveResult$conditionalD.diff <- result.conditionalD.diff
}
#### TESTS ####
# Save the result to a file for future comparisons
fileName <- "test_uStat11.Rdata"
if (flagSave) {
save(saveResult, file = file.path("tests", "testthat", fileName))
}
# Recover the expected results
saveResult <- 0
if (!file.exists(fileName)) {
fileName <- file.path("tests", "testthat", fileName)
}
load(fileName)
test_that(
"uStat11.jointD, difference kernel, doesn't change", {
expect_equal(saveResult$jointD.diff, result.jointD.diff,tolerance=1e-5)
}
)
test_that(
"uStat11.conditionalD, difference kernel, doesn't change", {
expect_equal(saveResult$conditionalD.diff, result.conditionalD.diff,tolerance=1e-5)
}
)
test_that(
"uStat11.jointD, identity kernel, doesn't change", {
expect_equal(saveResult$jointD.identity, result.jointD.identity)
}
)
test_that(
"uStat11.conditionalD, identity kernel, doesn't change", {
expect_equal(saveResult$conditionalD.identity, result.conditionalD.identity)
}
)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.